[INFO] cloning repository https://github.com/m5d215/jq-jit
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/m5d215/jq-jit" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fm5d215%2Fjq-jit", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fm5d215%2Fjq-jit'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2a2bad072106cea844dd8a7d31200f1d64eb0e3d
[INFO] fixing m5d215/jq-jit against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fm5d215%2Fjq-jit" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/m5d215/jq-jit
[INFO] finished tweaking git repo https://github.com/m5d215/jq-jit
[INFO] tweaked toml for git repo https://github.com/m5d215/jq-jit written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/m5d215/jq-jit on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/m5d215/jq-jit already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ab510d6e0a661bd045f7c5d84d9b4f72a80816b3a3b74662a5189463fc353515
[INFO] running `Command { std: "docker" "start" "ab510d6e0a661bd045f7c5d84d9b4f72a80816b3a3b74662a5189463fc353515", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ab510d6e0a661bd045f7c5d84d9b4f72a80816b3a3b74662a5189463fc353515" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ab510d6e0a661bd045f7c5d84d9b4f72a80816b3a3b74662a5189463fc353515", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ab510d6e0a661bd045f7c5d84d9b4f72a80816b3a3b74662a5189463fc353515" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]     Checking foldhash v0.2.0
[INFO] [stderr]    Compiling cranelift-srcgen v0.131.1
[INFO] [stderr]    Compiling wasmtime-internal-core v44.0.1
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling cranelift-isle v0.131.1
[INFO] [stderr]    Compiling cranelift-codegen-shared v0.131.1
[INFO] [stderr]    Compiling target-lexicon v0.13.5
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]     Checking bumpalo v3.20.2
[INFO] [stderr]     Checking rustc-hash v2.1.1
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking memchr v2.8.1
[INFO] [stderr]    Compiling cranelift-assembler-x64-meta v0.131.1
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]     Checking arbitrary v1.4.2
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking regalloc2 v0.15.0
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]     Checking cranelift-control v0.131.1
[INFO] [stderr]     Checking cranelift-bitset v0.131.1
[INFO] [stderr]    Compiling cranelift-codegen-meta v0.131.1
[INFO] [stderr]     Checking cranelift-entity v0.131.1
[INFO] [stderr]     Checking cranelift-bforest v0.131.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking gimli v0.33.0
[INFO] [stderr]    Compiling libmimalloc-sys v0.1.49
[INFO] [stderr]    Compiling stacker v0.1.24
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking region v3.0.2
[INFO] [stderr]    Compiling cranelift-assembler-x64 v0.131.1
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking wasmtime-internal-jit-icache-coherence v44.0.1
[INFO] [stderr]     Checking csv-core v0.1.13
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking compact_str v0.9.1
[INFO] [stderr]     Checking mimalloc v0.1.52
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking rand v0.9.4
[INFO] [stderr]     Checking rand_xorshift v0.4.0
[INFO] [stderr]     Checking unarray v0.1.4
[INFO] [stderr]    Compiling cranelift-codegen v0.131.1
[INFO] [stderr]     Checking proptest v1.11.0
[INFO] [stderr]    Compiling ar_archive_writer v0.5.1
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]    Compiling psm v0.1.30
[INFO] [stderr]     Checking cranelift-native v0.131.1
[INFO] [stderr]     Checking cranelift-module v0.131.1
[INFO] [stderr]     Checking cranelift-frontend v0.131.1
[INFO] [stderr]     Checking cranelift-jit v0.131.1
[INFO] [stderr]     Checking jq-jit v1.10.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/simplify.rs (10 fixes)
[INFO] [stderr]        Fixed src/parser.rs (2 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/value.rs:916:19
[INFO] [stdout]     |
[INFO] [stdout] 916 |             match parse_json_value(&buf, start, 0) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 917 |                 Ok((val, end)) => {
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `val` calls a custom destructor
[INFO] [stdout]     |                     `val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 923 |                     reject_adjacent_word_token(&buf, end)?;
[INFO] [stdout]     |                     --------------------------------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 932 |                     cb(val, line)?;
[INFO] [stdout]     |                     --------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                     `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 933 |                 }
[INFO] [stdout] 934 |                 Err(e) => {
[INFO] [stdout]     |                     -
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `e` calls a custom destructor
[INFO] [stdout]     |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 943 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 946 |             buf.drain(..consumed);
[INFO] [stdout]     |             ---------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> src/value.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Drop for ObjMap {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]     |
[INFO] [stdout] 774 | impl Drop for Repr {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]    --> src/value.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Drop for ObjMap {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]     |
[INFO] [stdout] 774 | impl Drop for Repr {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/drain.rs:173:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/eval.rs (25 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/value.rs:1244:19
[INFO] [stdout]      |
[INFO] [stdout] 1240 |             let (end, vclean) = match skip_json_value_classify(b, i) { Ok(r) => r, Err(_) => return last_match };
[INFO] [stdout]      |                                       ------------------------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1244 |             match skip_json_value(b, i) { Ok(end) => end, Err(_) => return last_match }
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1245 |         };
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/jit.rs (25 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/value.rs:5493:11
[INFO] [stdout]      |
[INFO] [stdout] 5492 |     let mut p = JqFromJsonParser::new(input.as_bytes());
[INFO] [stdout]      |         -----
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `p` calls a custom destructor
[INFO] [stdout]      |         `p` will be dropped later as of Edition 2024
[INFO] [stdout] 5493 |     match p.parse_one() {
[INFO] [stdout]      |           ^^^^^^^^^^^^^
[INFO] [stdout]      |           |
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5504 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `p` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `p` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/interpreter.rs (1 fix)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/runtime.rs:444:36
[INFO] [stdout]     |
[INFO] [stdout] 438 |                 let combined = if matches!(&args[2], Value::Null) {
[INFO] [stdout]     |                     --------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `combined` calls a custom destructor
[INFO] [stdout]     |                     `combined` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 444 |                 rt_test(&args[0], &Value::from_string(pat), not_empty)
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 445 |             } else {
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> src/value.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Drop for ObjMap {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]     |
[INFO] [stdout] 774 | impl Drop for Repr {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `combined` invokes this custom destructor
[INFO] [stdout]    --> src/value.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Drop for ObjMap {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `combined` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]     |
[INFO] [stdout] 774 | impl Drop for Repr {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/value.rs (5 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:1736:29
[INFO] [stdout]      |
[INFO] [stdout] 1736 |         while let Some(v) = post_stack.pop() {
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1737 |             if !cb(v)? { return Ok(false); }
[INFO] [stdout]      |                 ------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 1738 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]        Fixed src/classify.rs (2 fixes)
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:1746:23
[INFO] [stdout]      |
[INFO] [stdout] 1742 |         let mut current = input;
[INFO] [stdout]      |             -----------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `current` calls a custom destructor
[INFO] [stdout]      |             `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1746 |                 match eval_one(cond, &current, env) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                       up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1747 |                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                        -
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        `v` calls a custom destructor
[INFO] [stdout]      |                        `v` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1750 |                         eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                         ---------------------------------------------------------------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1754 |             };
[INFO] [stdout]      |              - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 1755 |             if !cond_true { break; }
[INFO] [stdout] 1756 |             match eval_one(pre, &current, env) {
[INFO] [stdout]      |                   ----------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1757 |                 Ok(v) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                ------
[INFO] [stdout]      |                                |
[INFO] [stdout]      |                                this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 1758 |                 Err(()) => { if !eval(pre, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                  ------------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                  `#4` will be dropped later as of Edition 2024
[INFO] [stdout] 1759 |             }
[INFO] [stdout] 1760 |             match eval_one(post, &current, env) {
[INFO] [stdout]      |                   -----------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                   `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1764 |                     eval(post, current.clone(), env, &mut |v| { pv = v; Ok(true) })?;
[INFO] [stdout]      |                     ----------------------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                     `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1768 |             let next = match eval_one(transform, &current, env) {
[INFO] [stdout]      |                              ----------------------------------
[INFO] [stdout]      |                              |
[INFO] [stdout]      |                              this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                              `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1772 |                     eval(transform, current.clone(), env, &mut |v| { nv = v; Ok(true) })?;
[INFO] [stdout]      |                     ---------------------------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                     `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:1782:29
[INFO] [stdout]      |
[INFO] [stdout] 1782 |         while let Some(v) = post_stack.pop() {
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1783 |             if !cb(v)? { return Ok(false); }
[INFO] [stdout]      |                 ------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 1784 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:1975:19
[INFO] [stdout]      |
[INFO] [stdout] 1962 |       cond: &Expr, update: &Expr, always_true: bool, mut current: Value,
[INFO] [stdout]      |                                                      -----------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      `current` calls a custom destructor
[INFO] [stdout]      |                                                      `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1975 |               match eval_one(cond, &current, env) {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                     up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1976 |                   Ok(v) => {
[INFO] [stdout]      |                      -
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      `v` calls a custom destructor
[INFO] [stdout]      |                      `v` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1982 |                       eval(cond, current.clone(), env, &mut |v| { conds.push(v.is_truthy()); Ok(true) })?;
[INFO] [stdout]      |                       -----------------------------------------------------------------------------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1985 |                           if !cb(current.clone())? { return Ok(false); }
[INFO] [stdout]      |                               --------------------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                               `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1986 |                           let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                               --------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `succ` calls a custom destructor
[INFO] [stdout]      |                               `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 1987 |                           eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                           ------------------------------------------------------------------------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 1988 |                           for u in succ {
[INFO] [stdout]      |                                    ----
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    `iter` calls a custom destructor
[INFO] [stdout]      |                                    `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                    `#4` will be dropped later as of Edition 2024
[INFO] [stdout] 1989 |                               if !stacker::maybe_grow(128 * 1024, 32 * 1024 * 1024,
[INFO] [stdout]      |  _________________________________-
[INFO] [stdout] 1990 | |                                 || eval_while_gen(cond, update, always_true, u, env, cb))?
[INFO] [stdout]      | |                                                                                          -
[INFO] [stdout]      | |                                                                                          |
[INFO] [stdout]      | |__________________________________________________________________________________________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                                                                            `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1999 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 2000 |           if !cb(current.clone())? { return Ok(false); }
[INFO] [stdout]      |               --------------------
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |               `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2001 |           // Advance through `update`, honouring its generator semantics.
[INFO] [stdout] 2002 |           if let Ok(next) = eval_one(update, &current, env) {
[INFO] [stdout]      |                             -------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                             `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2006 |           let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |               --------
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |               `#8` will be dropped later as of Edition 2024
[INFO] [stdout] 2007 |           eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |           ------------------------------------------------------------------------
[INFO] [stdout]      |           |
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |           `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2257:39
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                     let mut current = input;
[INFO] [stdout]      |                         -----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `current` calls a custom destructor
[INFO] [stdout]      |                         `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                             let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                 -----------------------------      -
[INFO] [stdout]      |                                                 |                                  |
[INFO] [stdout]      |                                                 |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                 |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                 eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                 ---------------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                             let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                           ------------
[INFO] [stdout]      |                                                                                                           |
[INFO] [stdout]      |                                                                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2257 |                                 match eval_one(sel_cond, &current, env) {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                       up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2258 |                                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                        -
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                         eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                         -------------------------------------------------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2265 |                             };
[INFO] [stdout]      |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 2269 |                                     Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                          ------
[INFO] [stdout]      |                                                          |
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                          `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                     Ok(None) => {}
[INFO] [stdout] 2271 |                                     Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                      -------------------------------------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                      `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2276 |                                 Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                           -----------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                           `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                     if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                         --------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                             let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                       ------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                       `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                             env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                             ----------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                             `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                             let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                 -------                          ----------------
[INFO] [stdout]      |                                 |                                |
[INFO] [stdout]      |                                 |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                 |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `arr_val` calls a custom destructor
[INFO] [stdout]      |                                 `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                             gen_result?;
[INFO] [stdout]      |                             -----------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                         Err(rc) => {
[INFO] [stdout]      |                                             --
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             `rc` calls a custom destructor
[INFO] [stdout]      |                                             `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2307 |                                     let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                         -------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                         `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                             let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                 --------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `succ` calls a custom destructor
[INFO] [stdout]      |                                 `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                             eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                             ------------------------------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2268:39
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                     let mut current = input;
[INFO] [stdout]      |                         -----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `current` calls a custom destructor
[INFO] [stdout]      |                         `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                             let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                 -----------------------------      -
[INFO] [stdout]      |                                                 |                                  |
[INFO] [stdout]      |                                                 |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                 |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                 eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                 ---------------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                             let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                           ------------
[INFO] [stdout]      |                                                                                                           |
[INFO] [stdout]      |                                                                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2258 |                                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                        -
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                         eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                         -------------------------------------------------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2268 |                                 match eval_one_filter(rest, &current, env) {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                       up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2269 |                                     Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                          ------
[INFO] [stdout]      |                                                          |
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                          `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                     Ok(None) => {}
[INFO] [stdout] 2271 |                                     Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                      -------------------------------------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                      `#7` will be dropped later as of Edition 2024
[INFO] [stdout] 2272 |                                 }
[INFO] [stdout] 2273 |                             }
[INFO] [stdout]      |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 2276 |                                 Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                           -----------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                           `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                     if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                         --------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                             let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                       ------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                       `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                             env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                             ----------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                             `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                             let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                 -------                          ----------------
[INFO] [stdout]      |                                 |                                |
[INFO] [stdout]      |                                 |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                 |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `arr_val` calls a custom destructor
[INFO] [stdout]      |                                 `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                             gen_result?;
[INFO] [stdout]      |                             -----------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                         Err(rc) => {
[INFO] [stdout]      |                                             --
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             `rc` calls a custom destructor
[INFO] [stdout]      |                                             `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2307 |                                     let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                         -------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                         `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                             let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                 --------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `succ` calls a custom destructor
[INFO] [stdout]      |                                 `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                             eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                             ------------------------------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2275:35
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                     let mut current = input;
[INFO] [stdout]      |                         -----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `current` calls a custom destructor
[INFO] [stdout]      |                         `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                             let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                 -----------------------------      -
[INFO] [stdout]      |                                                 |                                  |
[INFO] [stdout]      |                                                 |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                 |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                 eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                 ---------------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                             let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                           ------------
[INFO] [stdout]      |                                                                                                           |
[INFO] [stdout]      |                                                                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2258 |                                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                        -
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                         eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                         -------------------------------------------------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2269 |                                     Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                          ------
[INFO] [stdout]      |                                                          |
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                          `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                     Ok(None) => {}
[INFO] [stdout] 2271 |                                     Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                      -------------------------------------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                      `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2275 |                             match eval_one_filter(right, &current, env) {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                   up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2276 |                                 Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                           -----------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                           `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                     if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                         --------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2282 |                         }
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                             let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                       ------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                       `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                             env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                             ----------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                             `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                             let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                 -------                          ----------------
[INFO] [stdout]      |                                 |                                |
[INFO] [stdout]      |                                 |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                 |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `arr_val` calls a custom destructor
[INFO] [stdout]      |                                 `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                             gen_result?;
[INFO] [stdout]      |                             -----------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                         Err(rc) => {
[INFO] [stdout]      |                                             --
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             `rc` calls a custom destructor
[INFO] [stdout]      |                                             `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2307 |                                     let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                         -------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                         `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                             let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                 --------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `succ` calls a custom destructor
[INFO] [stdout]      |                                 `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                             eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                             ------------------------------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2294:43
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                     let mut current = input;
[INFO] [stdout]      |                         -----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `current` calls a custom destructor
[INFO] [stdout]      |                         `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                             let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                 -----------------------------      -
[INFO] [stdout]      |                                                 |                                  |
[INFO] [stdout]      |                                                 |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                 |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                 eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                 ---------------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                             let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                           ------------
[INFO] [stdout]      |                                                                                                           |
[INFO] [stdout]      |                                                                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2258 |                                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                        -
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                         eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                         -------------------------------------------------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2269 |                                     Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                          ------
[INFO] [stdout]      |                                                          |
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                          `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                     Ok(None) => {}
[INFO] [stdout] 2271 |                                     Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                      -------------------------------------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                      `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2276 |                                 Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                           -----------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                           `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                     if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                         --------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                             let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                       ------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                       `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                             env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                             ----------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                             `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                             let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                 -------                          ----------------
[INFO] [stdout]      |                                 |                                |
[INFO] [stdout]      |                                 |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                 |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `arr_val` calls a custom destructor
[INFO] [stdout]      |                                 `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                             gen_result?;
[INFO] [stdout]      |                             -----------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2294 |                                     match Rc::try_unwrap(rc) {
[INFO] [stdout]      |                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                           up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                         Err(rc) => {
[INFO] [stdout]      |                                             --
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             `rc` calls a custom destructor
[INFO] [stdout]      |                                             `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2305 |                                 }
[INFO] [stdout]      |                                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 2306 |                                 other => {
[INFO] [stdout] 2307 |                                     let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                         -------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                         `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                             let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                 --------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `succ` calls a custom destructor
[INFO] [stdout]      |                                 `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                             eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                             ------------------------------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2311:40
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                       let mut current = input;
[INFO] [stdout]      |                           -----------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `current` calls a custom destructor
[INFO] [stdout]      |                           `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                               let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                   -----------------------------      -
[INFO] [stdout]      |                                                   |                                  |
[INFO] [stdout]      |                                                   |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                   |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                   eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                   ---------------------------------------------------------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                               let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                             ------------
[INFO] [stdout]      |                                                                                                             |
[INFO] [stdout]      |                                                                                                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2258 |                                       Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                          -
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                          `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                           eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                           -------------------------------------------------------------------------------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                           `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2269 |                                       Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                            ------
[INFO] [stdout]      |                                                            |
[INFO] [stdout]      |                                                            this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                            `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                       Ok(None) => {}
[INFO] [stdout] 2271 |                                       Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                        -------------------------------------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                        `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2276 |                                   Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                             -----------
[INFO] [stdout]      |                                                             |
[INFO] [stdout]      |                                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                       if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                           --------------------------------------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                           `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                               let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                         ------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                         `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                               env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                               ----------------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                               `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                               let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                   -------                          ----------------
[INFO] [stdout]      |                                   |                                |
[INFO] [stdout]      |                                   |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                   |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   `arr_val` calls a custom destructor
[INFO] [stdout]      |                                   `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                               gen_result?;
[INFO] [stdout]      |                               -----------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                               `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                           Err(rc) => {
[INFO] [stdout]      |                                               --
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               `rc` calls a custom destructor
[INFO] [stdout]      |                                               `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2307 |                                       let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                           -------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                           `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2311 |                           } else { match eval_one(update, &current, env) { Ok(next) => {
[INFO] [stdout]      |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      |                                          up until Edition 2021 `#17` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                               let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                   --------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `succ` calls a custom destructor
[INFO] [stdout]      |                                   `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                               eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                               ------------------------------------------------------------------------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                               `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2325 |                                       for u in succ {
[INFO] [stdout]      |                                                ----
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                `iter` calls a custom destructor
[INFO] [stdout]      |                                                `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                                `#15` will be dropped later as of Edition 2024
[INFO] [stdout] 2326 |                                           let go = eval_while_gen(cond, update, always_true, u, env,
[INFO] [stdout]      |  __________________________________________________-
[INFO] [stdout] 2327 | |                                             &mut |wv| eval(right, wv, env, cb))?;
[INFO] [stdout]      | |                                                                                -
[INFO] [stdout]      | |                                                                                |
[INFO] [stdout]      | |________________________________________________________________________________this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |                                                                                  `#16` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2333 |                           }}}
[INFO] [stdout]      |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#17` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#17` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#16` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2370:72
[INFO] [stdout]      |
[INFO] [stdout] 2369 | ...                       let dummy = Value::number(1.0);
[INFO] [stdout]      |                               -----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `dummy` calls a custom destructor
[INFO] [stdout]      |                               `dummy` will be dropped later as of Edition 2024
[INFO] [stdout] 2370 | ...                       eval_bool_compound(predicate, &dummy, &env.borrow().vars).is_some()
[INFO] [stdout]      |                                                                  ^^^^^^^^^^^^
[INFO] [stdout]      |                                                                  |
[INFO] [stdout]      |                                                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                                  up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2371 | ...                   } else { false };
[INFO] [stdout]      |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `dummy` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `dummy` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:3987:33
[INFO] [stdout]      |
[INFO] [stdout] 3987 |             while let Some(v) = read_next_input() {
[INFO] [stdout]      |                                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 3988 |                 if !cb(v)? { return Ok(false); }
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 3989 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:5801:43
[INFO] [stdout]      |
[INFO] [stdout] 5800 |   ...                       let mut nav: Option<Value> = None;
[INFO] [stdout]      |                                 -------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `nav` calls a custom destructor
[INFO] [stdout]      |                                 `nav` will be dropped later as of Edition 2024
[INFO] [stdout] 5801 |   ...                       match eval_path(right, v.clone(), env, &mut |rp| {
[INFO] [stdout]      |  _________________________________^
[INFO] [stdout] 5802 | | ...                           nav = Some(rp);
[INFO] [stdout] 5803 | | ...                           Ok(false)
[INFO] [stdout] 5804 | | ...                       }) {
[INFO] [stdout]      | |                            ^
[INFO] [stdout]      | |                            |
[INFO] [stdout]      | |____________________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5820 |   ...                   })?;
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `nav` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `nav` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:6624:11
[INFO] [stdout]      |
[INFO] [stdout] 6623 |     let mut nav: Option<Value> = None;
[INFO] [stdout]      |         -------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `nav` calls a custom destructor
[INFO] [stdout]      |         `nav` will be dropped later as of Edition 2024
[INFO] [stdout] 6624 |     match eval_path(catch_expr, payload.clone(), env, &mut |rp| { nav = Some(rp); Ok(false) }) {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |           |
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6639 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `nav` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `nav` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:7915:15
[INFO] [stdout]      |
[INFO] [stdout] 7913 |         let a = va.cloned().unwrap_or(Value::Null);
[INFO] [stdout]      |             -
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `a` calls a custom destructor
[INFO] [stdout]      |             `a` will be dropped later as of Edition 2024
[INFO] [stdout] 7914 |         let b = vb.cloned().unwrap_or(Value::Null);
[INFO] [stdout]      |             -
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `b` calls a custom destructor
[INFO] [stdout]      |             `b` will be dropped later as of Edition 2024
[INFO] [stdout] 7915 |         match crate::eval::eval_binop(binop_from_i32(op), &a, &b) {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7920 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `b` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `b` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:7979:15
[INFO] [stdout]      |
[INFO] [stdout] 7977 |         let a = lv.clone();
[INFO] [stdout]      |             -
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `a` calls a custom destructor
[INFO] [stdout]      |             `a` will be dropped later as of Edition 2024
[INFO] [stdout] 7978 |         let b = rv.clone();
[INFO] [stdout]      |             -
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `b` calls a custom destructor
[INFO] [stdout]      |             `b` will be dropped later as of Edition 2024
[INFO] [stdout] 7979 |         match crate::eval::eval_binop(binop_from_i32(op), &a, &b) {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7984 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `b` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `b` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:7934:23
[INFO] [stdout]      |
[INFO] [stdout] 7932 |                 let a = Value::Null;
[INFO] [stdout]      |                     -
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `a` calls a custom destructor
[INFO] [stdout]      |                     `a` will be dropped later as of Edition 2024
[INFO] [stdout] 7933 |                 let (l, r) = if field_is_lhs != 0 { (&a, &*rhs) } else { (&*rhs, &a) };
[INFO] [stdout] 7934 |                 match crate::eval::eval_binop(binop_from_i32(op), l, r) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7938 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:7999:23
[INFO] [stdout]      |
[INFO] [stdout] 7998 |                 let key_val = Value::from_str(key);
[INFO] [stdout]      |                     -------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `key_val` calls a custom destructor
[INFO] [stdout]      |                     `key_val` will be dropped later as of Edition 2024
[INFO] [stdout] 7999 |                 match crate::eval::eval_index(&*base, &key_val, false) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 8006 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:8037:23
[INFO] [stdout]      |
[INFO] [stdout] 8036 |                 let key_val = Value::from_str(key);
[INFO] [stdout]      |                     -------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `key_val` calls a custom destructor
[INFO] [stdout]      |                     `key_val` will be dropped later as of Edition 2024
[INFO] [stdout] 8037 |                 match crate::eval::eval_index(&*base, &key_val, false) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 8047 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:8411:23
[INFO] [stdout]      |
[INFO] [stdout] 8382 |                 let result = if trimmed == "null" {
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `result` calls a custom destructor
[INFO] [stdout]      |                     `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 8411 |                 match crate::value::json_to_value(trimmed) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 8427 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:9464:37
[INFO] [stdout]      |
[INFO] [stdout] 9464 |                 while let Some(v) = stack.pop() {
[INFO] [stdout]      |                                -    ^^^^^^^^^^^
[INFO] [stdout]      |                                |    |
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                `v` calls a custom destructor
[INFO] [stdout]      |                                `v` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 9479 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:9508:47
[INFO] [stdout]      |
[INFO] [stdout] 9508 |                 while let Some((val, path)) = stack.pop() {
[INFO] [stdout]      |                                 ---  ----     ^^^^^^^^^^^
[INFO] [stdout]      |                                 |    |        |
[INFO] [stdout]      |                                 |    |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                 |    |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                 |    `path` calls a custom destructor
[INFO] [stdout]      |                                 |    `path` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `val` calls a custom destructor
[INFO] [stdout]      |                                 `val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 9527 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `path` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `path` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:9916:27
[INFO] [stdout]      |
[INFO] [stdout] 9915 |                     let env = new_delegated_env(&[&path_expr, &update_expr]);
[INFO] [stdout]      |                         ---
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `env` calls a custom destructor
[INFO] [stdout]      |                         `env` will be dropped later as of Edition 2024
[INFO] [stdout] 9916 |                     match crate::eval::eval_update_standalone(&path_expr, &update_expr, input, &env) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 9920 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `env` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `env` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:9897:27
[INFO] [stdout]      |
[INFO] [stdout] 9896 |                     let env = new_delegated_env(&[&path_expr, &value_expr]);
[INFO] [stdout]      |                         ---
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `env` calls a custom destructor
[INFO] [stdout]      |                         `env` will be dropped later as of Edition 2024
[INFO] [stdout] 9897 |                     match crate::eval::eval_assign_standalone(&path_expr, &value_expr, input, &env) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 9901 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `env` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `env` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/value.rs:916:19
[INFO] [stdout]     |
[INFO] [stdout] 916 |             match parse_json_value(&buf, start, 0) {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                   up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 917 |                 Ok((val, end)) => {
[INFO] [stdout]     |                     ---
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `val` calls a custom destructor
[INFO] [stdout]     |                     `val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 923 |                     reject_adjacent_word_token(&buf, end)?;
[INFO] [stdout]     |                     --------------------------------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 932 |                     cb(val, line)?;
[INFO] [stdout]     |                     --------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                     `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 933 |                 }
[INFO] [stdout] 934 |                 Err(e) => {
[INFO] [stdout]     |                     -
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `e` calls a custom destructor
[INFO] [stdout]     |                     `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 943 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 946 |             buf.drain(..consumed);
[INFO] [stdout]     |             ---------------------
[INFO] [stdout]     |             |
[INFO] [stdout]     |             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |             `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> src/value.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Drop for ObjMap {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]     |
[INFO] [stdout] 774 | impl Drop for Repr {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]    --> src/value.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Drop for ObjMap {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]     |
[INFO] [stdout] 774 | impl Drop for Repr {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]     |
[INFO] [stdout] 713 | impl Drop for Error {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/alloc/src/vec/drain.rs:173:0
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating tests/jq_colors_env.rs from 2021 edition to 2024
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/value.rs:1244:19
[INFO] [stdout]      |
[INFO] [stdout] 1240 |             let (end, vclean) = match skip_json_value_classify(b, i) { Ok(r) => r, Err(_) => return last_match };
[INFO] [stdout]      |                                       ------------------------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1244 |             match skip_json_value(b, i) { Ok(end) => end, Err(_) => return last_match }
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1245 |         };
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/value.rs:5493:11
[INFO] [stdout]      |
[INFO] [stdout] 5492 |     let mut p = JqFromJsonParser::new(input.as_bytes());
[INFO] [stdout]      |         -----
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `p` calls a custom destructor
[INFO] [stdout]      |         `p` will be dropped later as of Edition 2024
[INFO] [stdout] 5493 |     match p.parse_one() {
[INFO] [stdout]      |           ^^^^^^^^^^^^^
[INFO] [stdout]      |           |
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5504 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `p` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `p` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/runtime.rs:444:36
[INFO] [stdout]     |
[INFO] [stdout] 438 |                 let combined = if matches!(&args[2], Value::Null) {
[INFO] [stdout]     |                     --------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     `combined` calls a custom destructor
[INFO] [stdout]     |                     `combined` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 444 |                 rt_test(&args[0], &Value::from_string(pat), not_empty)
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 445 |             } else {
[INFO] [stdout]     |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> src/value.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Drop for ObjMap {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]     |
[INFO] [stdout] 774 | impl Drop for Repr {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `combined` invokes this custom destructor
[INFO] [stdout]    --> src/value.rs:151:1
[INFO] [stdout]     |
[INFO] [stdout] 151 | impl Drop for ObjMap {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `combined` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]     |
[INFO] [stdout] 774 | impl Drop for Repr {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:1736:29
[INFO] [stdout]      |
[INFO] [stdout] 1736 |         while let Some(v) = post_stack.pop() {
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1737 |             if !cb(v)? { return Ok(false); }
[INFO] [stdout]      |                 ------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 1738 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:1746:23
[INFO] [stdout]      |
[INFO] [stdout] 1742 |         let mut current = input;
[INFO] [stdout]      |             -----------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `current` calls a custom destructor
[INFO] [stdout]      |             `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1746 |                 match eval_one(cond, &current, env) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                       up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1747 |                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                        -
[INFO] [stdout]      |                        |
[INFO] [stdout]      |                        `v` calls a custom destructor
[INFO] [stdout]      |                        `v` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1750 |                         eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                         ---------------------------------------------------------------------------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                         `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1754 |             };
[INFO] [stdout]      |              - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 1755 |             if !cond_true { break; }
[INFO] [stdout] 1756 |             match eval_one(pre, &current, env) {
[INFO] [stdout]      |                   ----------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1757 |                 Ok(v) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                ------
[INFO] [stdout]      |                                |
[INFO] [stdout]      |                                this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 1758 |                 Err(()) => { if !eval(pre, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                  ------------------------------------
[INFO] [stdout]      |                                  |
[INFO] [stdout]      |                                  this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                  `#4` will be dropped later as of Edition 2024
[INFO] [stdout] 1759 |             }
[INFO] [stdout] 1760 |             match eval_one(post, &current, env) {
[INFO] [stdout]      |                   -----------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                   `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1764 |                     eval(post, current.clone(), env, &mut |v| { pv = v; Ok(true) })?;
[INFO] [stdout]      |                     ----------------------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                     `#6` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1768 |             let next = match eval_one(transform, &current, env) {
[INFO] [stdout]      |                              ----------------------------------
[INFO] [stdout]      |                              |
[INFO] [stdout]      |                              this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                              `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1772 |                     eval(transform, current.clone(), env, &mut |v| { nv = v; Ok(true) })?;
[INFO] [stdout]      |                     ---------------------------------------------------------------------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                     `#8` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:1782:29
[INFO] [stdout]      |
[INFO] [stdout] 1782 |         while let Some(v) = post_stack.pop() {
[INFO] [stdout]      |                             ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                             up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1783 |             if !cb(v)? { return Ok(false); }
[INFO] [stdout]      |                 ------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 1784 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:1975:19
[INFO] [stdout]      |
[INFO] [stdout] 1962 |       cond: &Expr, update: &Expr, always_true: bool, mut current: Value,
[INFO] [stdout]      |                                                      -----------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      `current` calls a custom destructor
[INFO] [stdout]      |                                                      `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1975 |               match eval_one(cond, &current, env) {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                     up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 1976 |                   Ok(v) => {
[INFO] [stdout]      |                      -
[INFO] [stdout]      |                      |
[INFO] [stdout]      |                      `v` calls a custom destructor
[INFO] [stdout]      |                      `v` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1982 |                       eval(cond, current.clone(), env, &mut |v| { conds.push(v.is_truthy()); Ok(true) })?;
[INFO] [stdout]      |                       -----------------------------------------------------------------------------------
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1985 |                           if !cb(current.clone())? { return Ok(false); }
[INFO] [stdout]      |                               --------------------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                               `#2` will be dropped later as of Edition 2024
[INFO] [stdout] 1986 |                           let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                               --------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `succ` calls a custom destructor
[INFO] [stdout]      |                               `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 1987 |                           eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                           ------------------------------------------------------------------------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] 1988 |                           for u in succ {
[INFO] [stdout]      |                                    ----
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    `iter` calls a custom destructor
[INFO] [stdout]      |                                    `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                    this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                    `#4` will be dropped later as of Edition 2024
[INFO] [stdout] 1989 |                               if !stacker::maybe_grow(128 * 1024, 32 * 1024 * 1024,
[INFO] [stdout]      |  _________________________________-
[INFO] [stdout] 1990 | |                                 || eval_while_gen(cond, update, always_true, u, env, cb))?
[INFO] [stdout]      | |                                                                                          -
[INFO] [stdout]      | |                                                                                          |
[INFO] [stdout]      | |__________________________________________________________________________________________this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                                                                            `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 1999 |           }
[INFO] [stdout]      |           - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 2000 |           if !cb(current.clone())? { return Ok(false); }
[INFO] [stdout]      |               --------------------
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |               `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2001 |           // Advance through `update`, honouring its generator semantics.
[INFO] [stdout] 2002 |           if let Ok(next) = eval_one(update, &current, env) {
[INFO] [stdout]      |                             -------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                             `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2006 |           let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |               --------
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |               `#8` will be dropped later as of Edition 2024
[INFO] [stdout] 2007 |           eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |           ------------------------------------------------------------------------
[INFO] [stdout]      |           |
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |           `#9` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2257:39
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                     let mut current = input;
[INFO] [stdout]      |                         -----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `current` calls a custom destructor
[INFO] [stdout]      |                         `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                             let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                 -----------------------------      -
[INFO] [stdout]      |                                                 |                                  |
[INFO] [stdout]      |                                                 |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                 |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                 eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                 ---------------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                             let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                           ------------
[INFO] [stdout]      |                                                                                                           |
[INFO] [stdout]      |                                                                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2257 |                                 match eval_one(sel_cond, &current, env) {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                       up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2258 |                                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                        -
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                         eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                         -------------------------------------------------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2265 |                             };
[INFO] [stdout]      |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 2269 |                                     Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                          ------
[INFO] [stdout]      |                                                          |
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                          `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                     Ok(None) => {}
[INFO] [stdout] 2271 |                                     Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                      -------------------------------------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                      `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2276 |                                 Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                           -----------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                           `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                     if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                         --------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                             let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                       ------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                       `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                             env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                             ----------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                             `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                             let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                 -------                          ----------------
[INFO] [stdout]      |                                 |                                |
[INFO] [stdout]      |                                 |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                 |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `arr_val` calls a custom destructor
[INFO] [stdout]      |                                 `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                             gen_result?;
[INFO] [stdout]      |                             -----------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                         Err(rc) => {
[INFO] [stdout]      |                                             --
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             `rc` calls a custom destructor
[INFO] [stdout]      |                                             `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2307 |                                     let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                         -------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                         `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                             let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                 --------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `succ` calls a custom destructor
[INFO] [stdout]      |                                 `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                             eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                             ------------------------------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2268:39
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                     let mut current = input;
[INFO] [stdout]      |                         -----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `current` calls a custom destructor
[INFO] [stdout]      |                         `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                             let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                 -----------------------------      -
[INFO] [stdout]      |                                                 |                                  |
[INFO] [stdout]      |                                                 |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                 |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                 eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                 ---------------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                             let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                           ------------
[INFO] [stdout]      |                                                                                                           |
[INFO] [stdout]      |                                                                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2258 |                                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                        -
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                         eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                         -------------------------------------------------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2268 |                                 match eval_one_filter(rest, &current, env) {
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                       up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2269 |                                     Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                          ------
[INFO] [stdout]      |                                                          |
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                          `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                     Ok(None) => {}
[INFO] [stdout] 2271 |                                     Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                      -------------------------------------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                      `#7` will be dropped later as of Edition 2024
[INFO] [stdout] 2272 |                                 }
[INFO] [stdout] 2273 |                             }
[INFO] [stdout]      |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 2276 |                                 Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                           -----------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                           `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                     if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                         --------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                             let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                       ------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                       `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                             env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                             ----------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                             `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                             let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                 -------                          ----------------
[INFO] [stdout]      |                                 |                                |
[INFO] [stdout]      |                                 |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                 |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `arr_val` calls a custom destructor
[INFO] [stdout]      |                                 `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                             gen_result?;
[INFO] [stdout]      |                             -----------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                         Err(rc) => {
[INFO] [stdout]      |                                             --
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             `rc` calls a custom destructor
[INFO] [stdout]      |                                             `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2307 |                                     let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                         -------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                         `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                             let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                 --------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `succ` calls a custom destructor
[INFO] [stdout]      |                                 `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                             eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                             ------------------------------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2275:35
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                     let mut current = input;
[INFO] [stdout]      |                         -----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `current` calls a custom destructor
[INFO] [stdout]      |                         `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                             let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                 -----------------------------      -
[INFO] [stdout]      |                                                 |                                  |
[INFO] [stdout]      |                                                 |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                 |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                 eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                 ---------------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                             let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                           ------------
[INFO] [stdout]      |                                                                                                           |
[INFO] [stdout]      |                                                                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2258 |                                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                        -
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                         eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                         -------------------------------------------------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2269 |                                     Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                          ------
[INFO] [stdout]      |                                                          |
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                          `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                     Ok(None) => {}
[INFO] [stdout] 2271 |                                     Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                      -------------------------------------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                      `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2275 |                             match eval_one_filter(right, &current, env) {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                   up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2276 |                                 Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                           -----------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                           `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                     if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                         --------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2282 |                         }
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                             let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                       ------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                       `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                             env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                             ----------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                             `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                             let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                 -------                          ----------------
[INFO] [stdout]      |                                 |                                |
[INFO] [stdout]      |                                 |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                 |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `arr_val` calls a custom destructor
[INFO] [stdout]      |                                 `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                             gen_result?;
[INFO] [stdout]      |                             -----------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                         Err(rc) => {
[INFO] [stdout]      |                                             --
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             `rc` calls a custom destructor
[INFO] [stdout]      |                                             `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2307 |                                     let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                         -------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                         `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                             let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                 --------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `succ` calls a custom destructor
[INFO] [stdout]      |                                 `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                             eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                             ------------------------------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2294:43
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                     let mut current = input;
[INFO] [stdout]      |                         -----------
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `current` calls a custom destructor
[INFO] [stdout]      |                         `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                             let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                 -----------------------------      -
[INFO] [stdout]      |                                                 |                                  |
[INFO] [stdout]      |                                                 |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                 |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                 eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                 ---------------------------------------------------------------------------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                             let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                           ------------
[INFO] [stdout]      |                                                                                                           |
[INFO] [stdout]      |                                                                                                           this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                           `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2258 |                                     Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                        -
[INFO] [stdout]      |                                        |
[INFO] [stdout]      |                                        this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                        `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                         eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                         -------------------------------------------------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                         `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2269 |                                     Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                          ------
[INFO] [stdout]      |                                                          |
[INFO] [stdout]      |                                                          this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                          `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                     Ok(None) => {}
[INFO] [stdout] 2271 |                                     Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                      -------------------------------------
[INFO] [stdout]      |                                                      |
[INFO] [stdout]      |                                                      this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                      `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2276 |                                 Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                           -----------
[INFO] [stdout]      |                                                           |
[INFO] [stdout]      |                                                           this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                           `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                     if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                         --------------------------------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                         `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                             let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                       ------------
[INFO] [stdout]      |                                       |
[INFO] [stdout]      |                                       this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                       `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                             env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                             ----------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                             `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                             let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                 -------                          ----------------
[INFO] [stdout]      |                                 |                                |
[INFO] [stdout]      |                                 |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                 |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `arr_val` calls a custom destructor
[INFO] [stdout]      |                                 `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                             gen_result?;
[INFO] [stdout]      |                             -----------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                             `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2294 |                                     match Rc::try_unwrap(rc) {
[INFO] [stdout]      |                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                           up until Edition 2021 `#15` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                         Err(rc) => {
[INFO] [stdout]      |                                             --
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             `rc` calls a custom destructor
[INFO] [stdout]      |                                             `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2305 |                                 }
[INFO] [stdout]      |                                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 2306 |                                 other => {
[INFO] [stdout] 2307 |                                     let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                         -------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                         `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                             let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                 --------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `succ` calls a custom destructor
[INFO] [stdout]      |                                 `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                             eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                             ------------------------------------------------------------------------
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                             `#14` will be dropped later as of Edition 2024
[INFO] [stdout]      |
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2311:40
[INFO] [stdout]      |
[INFO] [stdout] 2239 |                       let mut current = input;
[INFO] [stdout]      |                           -----------
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           `current` calls a custom destructor
[INFO] [stdout]      |                           `current` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2242 |                               let is_true = match eval_one(cond, &current, env) { Ok(v) => {
[INFO] [stdout]      |                                                   -----------------------------      -
[INFO] [stdout]      |                                                   |                                  |
[INFO] [stdout]      |                                                   |                                  `v` calls a custom destructor
[INFO] [stdout]      |                                                   |                                  `v` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2246 |                                   eval(cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                   ---------------------------------------------------------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                   `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2254 |                               let cond_true = if let Some(result) = eval_bool_compound(sel_cond, &current, &env.borrow().vars) {
[INFO] [stdout]      |                                                                                                             ------------
[INFO] [stdout]      |                                                                                                             |
[INFO] [stdout]      |                                                                                                             this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                                                                                             `#3` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2258 |                                       Ok(v) => v.is_truthy(),
[INFO] [stdout]      |                                          -
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                          `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2261 |                                           eval(sel_cond, current.clone(), env, &mut |v| { t = v.is_truthy(); Ok(true) })?;
[INFO] [stdout]      |                                           -------------------------------------------------------------------------------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]      |                                           `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2269 |                                       Ok(Some(v)) => { if !cb(v)? { return Ok(false); } }
[INFO] [stdout]      |                                                            ------
[INFO] [stdout]      |                                                            |
[INFO] [stdout]      |                                                            this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]      |                                                            `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 2270 |                                       Ok(None) => {}
[INFO] [stdout] 2271 |                                       Err(()) => { if !eval(rest, current.clone(), env, cb)? { return Ok(false); } }
[INFO] [stdout]      |                                                        -------------------------------------
[INFO] [stdout]      |                                                        |
[INFO] [stdout]      |                                                        this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]      |                                                        `#7` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2276 |                                   Ok(Some(result)) => { if !cb(result)? { return Ok(false); } }
[INFO] [stdout]      |                                                             -----------
[INFO] [stdout]      |                                                             |
[INFO] [stdout]      |                                                             this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]      |                                                             `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2279 |                                       if !eval(right, current.clone(), env, cb)? { return Ok(false); }
[INFO] [stdout]      |                                           --------------------------------------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]      |                                           `#9` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2285 |                               let old = env.borrow().get_var(v_idx);
[INFO] [stdout]      |                                         ------------
[INFO] [stdout]      |                                         |
[INFO] [stdout]      |                                         this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]      |                                         `#10` will be dropped later as of Edition 2024
[INFO] [stdout] 2286 |                               env.borrow_mut().set_var(v_idx, current);
[INFO] [stdout]      |                               ----------------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#11`
[INFO] [stdout]      |                               `#11` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2290 |                               let arr_val = std::mem::replace(&mut env.borrow_mut().vars[v_idx.idx()], old);
[INFO] [stdout]      |                                   -------                          ----------------
[INFO] [stdout]      |                                   |                                |
[INFO] [stdout]      |                                   |                                this value will be stored in a temporary; let us call it `#12`
[INFO] [stdout]      |                                   |                                `#12` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                   `arr_val` calls a custom destructor
[INFO] [stdout]      |                                   `arr_val` will be dropped later as of Edition 2024
[INFO] [stdout] 2291 |                               gen_result?;
[INFO] [stdout]      |                               -----------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#13`
[INFO] [stdout]      |                               `#13` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2299 |                                           Err(rc) => {
[INFO] [stdout]      |                                               --
[INFO] [stdout]      |                                               |
[INFO] [stdout]      |                                               `rc` calls a custom destructor
[INFO] [stdout]      |                                               `rc` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2307 |                                       let rhs_val = Value::Arr(Rc::new(elems));
[INFO] [stdout]      |                                           -------
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           `rhs_val` calls a custom destructor
[INFO] [stdout]      |                                           `rhs_val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2311 |                           } else { match eval_one(update, &current, env) { Ok(next) => {
[INFO] [stdout]      |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                          |
[INFO] [stdout]      |                                          this value will be stored in a temporary; let us call it `#17`
[INFO] [stdout]      |                                          up until Edition 2021 `#17` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2315 |                               let mut succ: Vec<Value> = Vec::new();
[INFO] [stdout]      |                                   --------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   `succ` calls a custom destructor
[INFO] [stdout]      |                                   `succ` will be dropped later as of Edition 2024
[INFO] [stdout] 2316 |                               eval(update, current.clone(), env, &mut |v| { succ.push(v); Ok(true) })?;
[INFO] [stdout]      |                               ------------------------------------------------------------------------
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               this value will be stored in a temporary; let us call it `#14`
[INFO] [stdout]      |                               `#14` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2325 |                                       for u in succ {
[INFO] [stdout]      |                                                ----
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                `iter` calls a custom destructor
[INFO] [stdout]      |                                                `iter` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                                this value will be stored in a temporary; let us call it `#15`
[INFO] [stdout]      |                                                `#15` will be dropped later as of Edition 2024
[INFO] [stdout] 2326 |                                           let go = eval_while_gen(cond, update, always_true, u, env,
[INFO] [stdout]      |  __________________________________________________-
[INFO] [stdout] 2327 | |                                             &mut |wv| eval(right, wv, env, cb))?;
[INFO] [stdout]      | |                                                                                -
[INFO] [stdout]      | |                                                                                |
[INFO] [stdout]      | |________________________________________________________________________________this value will be stored in a temporary; let us call it `#16`
[INFO] [stdout]      |                                                                                  `#16` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 2333 |                           }}}
[INFO] [stdout]      |                             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#17` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#17` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `current` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#5` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#6` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#10` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `#11` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `arr_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#12` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:2050:0
[INFO] [stdout] note: `#13` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rc` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `rhs_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `succ` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#14` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `iter` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#15` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#16` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:2370:72
[INFO] [stdout]      |
[INFO] [stdout] 2369 | ...                       let dummy = Value::number(1.0);
[INFO] [stdout]      |                               -----
[INFO] [stdout]      |                               |
[INFO] [stdout]      |                               `dummy` calls a custom destructor
[INFO] [stdout]      |                               `dummy` will be dropped later as of Edition 2024
[INFO] [stdout] 2370 | ...                       eval_bool_compound(predicate, &dummy, &env.borrow().vars).is_some()
[INFO] [stdout]      |                                                                  ^^^^^^^^^^^^
[INFO] [stdout]      |                                                                  |
[INFO] [stdout]      |                                                                  this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                                                  up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 2371 | ...                   } else { false };
[INFO] [stdout]      |                       - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/core/src/cell.rs:1582:0
[INFO] [stdout] note: `dummy` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `dummy` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:3987:33
[INFO] [stdout]      |
[INFO] [stdout] 3987 |             while let Some(v) = read_next_input() {
[INFO] [stdout]      |                                 ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                                 up until Edition 2021 `#2` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] 3988 |                 if !cb(v)? { return Ok(false); }
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                     `#1` will be dropped later as of Edition 2024
[INFO] [stdout] 3989 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:5801:43
[INFO] [stdout]      |
[INFO] [stdout] 5800 |   ...                       let mut nav: Option<Value> = None;
[INFO] [stdout]      |                                 -------
[INFO] [stdout]      |                                 |
[INFO] [stdout]      |                                 `nav` calls a custom destructor
[INFO] [stdout]      |                                 `nav` will be dropped later as of Edition 2024
[INFO] [stdout] 5801 |   ...                       match eval_path(right, v.clone(), env, &mut |rp| {
[INFO] [stdout]      |  _________________________________^
[INFO] [stdout] 5802 | | ...                           nav = Some(rp);
[INFO] [stdout] 5803 | | ...                           Ok(false)
[INFO] [stdout] 5804 | | ...                       }) {
[INFO] [stdout]      | |                            ^
[INFO] [stdout]      | |                            |
[INFO] [stdout]      | |____________________________this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                              up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 5820 |   ...                   })?;
[INFO] [stdout]      |                         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `nav` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `nav` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/eval.rs:6624:11
[INFO] [stdout]      |
[INFO] [stdout] 6623 |     let mut nav: Option<Value> = None;
[INFO] [stdout]      |         -------
[INFO] [stdout]      |         |
[INFO] [stdout]      |         `nav` calls a custom destructor
[INFO] [stdout]      |         `nav` will be dropped later as of Edition 2024
[INFO] [stdout] 6624 |     match eval_path(catch_expr, payload.clone(), env, &mut |rp| { nav = Some(rp); Ok(false) }) {
[INFO] [stdout]      |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |           |
[INFO] [stdout]      |           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 6639 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `nav` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `nav` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:7915:15
[INFO] [stdout]      |
[INFO] [stdout] 7913 |         let a = va.cloned().unwrap_or(Value::Null);
[INFO] [stdout]      |             -
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `a` calls a custom destructor
[INFO] [stdout]      |             `a` will be dropped later as of Edition 2024
[INFO] [stdout] 7914 |         let b = vb.cloned().unwrap_or(Value::Null);
[INFO] [stdout]      |             -
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `b` calls a custom destructor
[INFO] [stdout]      |             `b` will be dropped later as of Edition 2024
[INFO] [stdout] 7915 |         match crate::eval::eval_binop(binop_from_i32(op), &a, &b) {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7920 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `b` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `b` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:7979:15
[INFO] [stdout]      |
[INFO] [stdout] 7977 |         let a = lv.clone();
[INFO] [stdout]      |             -
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `a` calls a custom destructor
[INFO] [stdout]      |             `a` will be dropped later as of Edition 2024
[INFO] [stdout] 7978 |         let b = rv.clone();
[INFO] [stdout]      |             -
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `b` calls a custom destructor
[INFO] [stdout]      |             `b` will be dropped later as of Edition 2024
[INFO] [stdout] 7979 |         match crate::eval::eval_binop(binop_from_i32(op), &a, &b) {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |               |
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7984 | }
[INFO] [stdout]      | - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `b` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `b` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:7934:23
[INFO] [stdout]      |
[INFO] [stdout] 7932 |                 let a = Value::Null;
[INFO] [stdout]      |                     -
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `a` calls a custom destructor
[INFO] [stdout]      |                     `a` will be dropped later as of Edition 2024
[INFO] [stdout] 7933 |                 let (l, r) = if field_is_lhs != 0 { (&a, &*rhs) } else { (&*rhs, &a) };
[INFO] [stdout] 7934 |                 match crate::eval::eval_binop(binop_from_i32(op), l, r) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 7938 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `a` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:7999:23
[INFO] [stdout]      |
[INFO] [stdout] 7998 |                 let key_val = Value::from_str(key);
[INFO] [stdout]      |                     -------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `key_val` calls a custom destructor
[INFO] [stdout]      |                     `key_val` will be dropped later as of Edition 2024
[INFO] [stdout] 7999 |                 match crate::eval::eval_index(&*base, &key_val, false) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 8006 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:8037:23
[INFO] [stdout]      |
[INFO] [stdout] 8036 |                 let key_val = Value::from_str(key);
[INFO] [stdout]      |                     -------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `key_val` calls a custom destructor
[INFO] [stdout]      |                     `key_val` will be dropped later as of Edition 2024
[INFO] [stdout] 8037 |                 match crate::eval::eval_index(&*base, &key_val, false) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 8047 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `key_val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:8411:23
[INFO] [stdout]      |
[INFO] [stdout] 8382 |                 let result = if trimmed == "null" {
[INFO] [stdout]      |                     ------
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     `result` calls a custom destructor
[INFO] [stdout]      |                     `result` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 8411 |                 match crate::value::json_to_value(trimmed) {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                       |
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 8427 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `result` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:9464:37
[INFO] [stdout]      |
[INFO] [stdout] 9464 |                 while let Some(v) = stack.pop() {
[INFO] [stdout]      |                                -    ^^^^^^^^^^^
[INFO] [stdout]      |                                |    |
[INFO] [stdout]      |                                |    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                |    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                `v` calls a custom destructor
[INFO] [stdout]      |                                `v` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 9479 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:9508:47
[INFO] [stdout]      |
[INFO] [stdout] 9508 |                 while let Some((val, path)) = stack.pop() {
[INFO] [stdout]      |                                 ---  ----     ^^^^^^^^^^^
[INFO] [stdout]      |                                 |    |        |
[INFO] [stdout]      |                                 |    |        this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                                 |    |        up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                 |    `path` calls a custom destructor
[INFO] [stdout]      |                                 |    `path` will be dropped later as of Edition 2024
[INFO] [stdout]      |                                 `val` calls a custom destructor
[INFO] [stdout]      |                                 `val` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 9527 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `val` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `path` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `path` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:9916:27
[INFO] [stdout]      |
[INFO] [stdout] 9915 |                     let env = new_delegated_env(&[&path_expr, &update_expr]);
[INFO] [stdout]      |                         ---
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `env` calls a custom destructor
[INFO] [stdout]      |                         `env` will be dropped later as of Edition 2024
[INFO] [stdout] 9916 |                     match crate::eval::eval_update_standalone(&path_expr, &update_expr, input, &env) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 9920 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `env` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `env` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/jit.rs:9897:27
[INFO] [stdout]      |
[INFO] [stdout] 9896 |                     let env = new_delegated_env(&[&path_expr, &value_expr]);
[INFO] [stdout]      |                         ---
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `env` calls a custom destructor
[INFO] [stdout]      |                         `env` will be dropped later as of Edition 2024
[INFO] [stdout] 9897 |                     match crate::eval::eval_assign_standalone(&path_expr, &value_expr, input, &env) {
[INFO] [stdout]      |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                           |
[INFO] [stdout]      |                           this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                           up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 9901 |                 }
[INFO] [stdout]      |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/error.rs:713:1
[INFO] [stdout]      |
[INFO] [stdout]  713 | impl Drop for Error {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `env` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `env` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating tests/data_module_multivalue.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/jit_break_catchable.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/input_tokenizer_adjacent.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/fuzz_axis_float_input.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/jit_callbuiltin_arg_order.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/fuzz_error_wrap.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/any_all_inputs.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/stringchain_composite_file.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/io_stream_partial_flush.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/fuzz_axis_const_pipe.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating src/bin/jq-jit.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/metamorphic.rs from 2021 edition to 2024
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]     --> src/bin/jq-jit.rs:2875:13
[INFO] [stdout]      |
[INFO] [stdout] 2875 |         ($s:expr) => {{
[INFO] [stdout]      |             ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout]      = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]      |
[INFO] [stdout] 2875 |         ($s:expr_2021) => {{
[INFO] [stdout]      |                 +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]     --> src/bin/jq-jit.rs:3452:15
[INFO] [stdout]      |
[INFO] [stdout] 3452 |         ($buf:expr, $raw:expr) => {
[INFO] [stdout]      |               ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]      |
[INFO] [stdout] 3452 |         ($buf:expr_2021, $raw:expr) => {
[INFO] [stdout]      |                   +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]     --> src/bin/jq-jit.rs:3452:26
[INFO] [stdout]      |
[INFO] [stdout] 3452 |         ($buf:expr, $raw:expr) => {
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]      |
[INFO] [stdout] 3452 |         ($buf:expr, $raw:expr_2021) => {
[INFO] [stdout]      |                              +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]     --> src/bin/jq-jit.rs:3499:15
[INFO] [stdout]      |
[INFO] [stdout] 3499 |         ($buf:expr, $val:expr, $clean:expr) => {{
[INFO] [stdout]      |               ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]      |
[INFO] [stdout] 3499 |         ($buf:expr_2021, $val:expr, $clean:expr) => {{
[INFO] [stdout]      |                   +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]     --> src/bin/jq-jit.rs:3499:26
[INFO] [stdout]      |
[INFO] [stdout] 3499 |         ($buf:expr, $val:expr, $clean:expr) => {{
[INFO] [stdout]      |                          ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]      |
[INFO] [stdout] 3499 |         ($buf:expr, $val:expr_2021, $clean:expr) => {{
[INFO] [stdout]      |                              +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]     --> src/bin/jq-jit.rs:3499:39
[INFO] [stdout]      |
[INFO] [stdout] 3499 |         ($buf:expr, $val:expr, $clean:expr) => {{
[INFO] [stdout]      |                                       ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]      |
[INFO] [stdout] 3499 |         ($buf:expr, $val:expr, $clean:expr_2021) => {{
[INFO] [stdout]      |                                           +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]     --> src/bin/jq-jit.rs:3531:18
[INFO] [stdout]      |
[INFO] [stdout] 3531 |         ($filter:expr, $method:ident) => {{
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]      |
[INFO] [stdout] 3531 |         ($filter:expr_2021, $method:ident) => {{
[INFO] [stdout]      |                      +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition
[INFO] [stdout]     --> src/bin/jq-jit.rs:3538:18
[INFO] [stdout]      |
[INFO] [stdout] 3538 |         ($filter:expr, $method:ident) => {{
[INFO] [stdout]      |                  ^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/macro-fragment-specifiers.html>
[INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier
[INFO] [stdout]      |
[INFO] [stdout] 3538 |         ($filter:expr_2021, $method:ident) => {{
[INFO] [stdout]      |                      +++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/bin/jq-jit.rs:812:31
[INFO] [stdout]     |
[INFO] [stdout] 812 |         RemapExpr::FieldArray(ref exprs) => {
[INFO] [stdout]     |                               ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/bin/jq-jit.rs:812:9
[INFO] [stdout]     |
[INFO] [stdout] 812 |         RemapExpr::FieldArray(ref exprs) => {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: `--force-warn rust-2024-incompatible-pat` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 812 -         RemapExpr::FieldArray(ref exprs) => {
[INFO] [stdout] 812 +         RemapExpr::FieldArray(exprs) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/bin/jq-jit.rs:821:29
[INFO] [stdout]     |
[INFO] [stdout] 821 |         RemapExpr::BoolExpr(ref l, _, ref r) => {
[INFO] [stdout]     |                             ^^^       ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/bin/jq-jit.rs:821:9
[INFO] [stdout]     |
[INFO] [stdout] 821 |         RemapExpr::BoolExpr(ref l, _, ref r) => {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifiers
[INFO] [stdout]     |
[INFO] [stdout] 821 -         RemapExpr::BoolExpr(ref l, _, ref r) => {
[INFO] [stdout] 821 +         RemapExpr::BoolExpr(l, _, r) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/bin/jq-jit.rs:829:32
[INFO] [stdout]     |
[INFO] [stdout] 829 |         RemapExpr::StringChain(ref parts) => {
[INFO] [stdout]     |                                ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]    --> src/bin/jq-jit.rs:829:9
[INFO] [stdout]     |
[INFO] [stdout] 829 |         RemapExpr::StringChain(ref parts) => {
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]     |
[INFO] [stdout] 829 -         RemapExpr::StringChain(ref parts) => {
[INFO] [stdout] 829 +         RemapExpr::StringChain(parts) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:1016:32
[INFO] [stdout]      |
[INFO] [stdout] 1016 |         RemapExpr::LiteralJson(ref bytes) => ResolvedRemap::LiteralJson(bytes.clone()),
[INFO] [stdout]      |                                ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:1016:9
[INFO] [stdout]      |
[INFO] [stdout] 1016 |         RemapExpr::LiteralJson(ref bytes) => ResolvedRemap::LiteralJson(bytes.clone()),
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 1016 -         RemapExpr::LiteralJson(ref bytes) => ResolvedRemap::LiteralJson(bytes.clone()),
[INFO] [stdout] 1016 +         RemapExpr::LiteralJson(bytes) => ResolvedRemap::LiteralJson(bytes.clone()),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:1076:31
[INFO] [stdout]      |
[INFO] [stdout] 1076 |         RemapExpr::FieldArray(ref exprs) => {
[INFO] [stdout]      |                               ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:1076:9
[INFO] [stdout]      |
[INFO] [stdout] 1076 |         RemapExpr::FieldArray(ref exprs) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 1076 -         RemapExpr::FieldArray(ref exprs) => {
[INFO] [stdout] 1076 +         RemapExpr::FieldArray(exprs) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:1079:29
[INFO] [stdout]      |
[INFO] [stdout] 1079 |         RemapExpr::BoolExpr(ref l, op, ref r) => {
[INFO] [stdout]      |                             ^^^        ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |                             |
[INFO] [stdout]      |                             explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:1079:9
[INFO] [stdout]      |
[INFO] [stdout] 1079 |         RemapExpr::BoolExpr(ref l, op, ref r) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifiers
[INFO] [stdout]      |
[INFO] [stdout] 1079 -         RemapExpr::BoolExpr(ref l, op, ref r) => {
[INFO] [stdout] 1079 +         RemapExpr::BoolExpr(l, op, r) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:1118:32
[INFO] [stdout]      |
[INFO] [stdout] 1118 |         RemapExpr::StringChain(ref parts) => {
[INFO] [stdout]      |                                ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:1118:9
[INFO] [stdout]      |
[INFO] [stdout] 1118 |         RemapExpr::StringChain(ref parts) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 1118 -         RemapExpr::StringChain(ref parts) => {
[INFO] [stdout] 1118 +         RemapExpr::StringChain(parts) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:1367:39
[INFO] [stdout]      |
[INFO] [stdout] 1367 |         ResolvedBranchOutput::Literal(ref bytes) => buf.extend_from_slice(bytes),
[INFO] [stdout]      |                                       ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:1367:9
[INFO] [stdout]      |
[INFO] [stdout] 1367 |         ResolvedBranchOutput::Literal(ref bytes) => buf.extend_from_slice(bytes),
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 1367 -         ResolvedBranchOutput::Literal(ref bytes) => buf.extend_from_slice(bytes),
[INFO] [stdout] 1367 +         ResolvedBranchOutput::Literal(bytes) => buf.extend_from_slice(bytes),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:1373:37
[INFO] [stdout]      |
[INFO] [stdout] 1373 |         ResolvedBranchOutput::Remap(ref resolved_values) => {
[INFO] [stdout]      |                                     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:1373:9
[INFO] [stdout]      |
[INFO] [stdout] 1373 |         ResolvedBranchOutput::Remap(ref resolved_values) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 1373 -         ResolvedBranchOutput::Remap(ref resolved_values) => {
[INFO] [stdout] 1373 +         ResolvedBranchOutput::Remap(resolved_values) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:1377:40
[INFO] [stdout]      |
[INFO] [stdout] 1377 |         ResolvedBranchOutput::Computed(ref resolved) => {
[INFO] [stdout]      |                                        ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:1377:9
[INFO] [stdout]      |
[INFO] [stdout] 1377 |         ResolvedBranchOutput::Computed(ref resolved) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 1377 -         ResolvedBranchOutput::Computed(ref resolved) => {
[INFO] [stdout] 1377 +         ResolvedBranchOutput::Computed(resolved) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:1589:32
[INFO] [stdout]      |
[INFO] [stdout] 1589 |         RemapExpr::LiteralJson(ref bytes) => {
[INFO] [stdout]      |                                ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:1589:9
[INFO] [stdout]      |
[INFO] [stdout] 1589 |         RemapExpr::LiteralJson(ref bytes) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 1589 -         RemapExpr::LiteralJson(ref bytes) => {
[INFO] [stdout] 1589 +         RemapExpr::LiteralJson(bytes) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:1652:31
[INFO] [stdout]      |
[INFO] [stdout] 1652 |         RemapExpr::FieldArray(ref exprs) => {
[INFO] [stdout]      |                               ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:1652:9
[INFO] [stdout]      |
[INFO] [stdout] 1652 |         RemapExpr::FieldArray(ref exprs) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 1652 -         RemapExpr::FieldArray(ref exprs) => {
[INFO] [stdout] 1652 +         RemapExpr::FieldArray(exprs) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2149:49
[INFO] [stdout]      |
[INFO] [stdout] 2149 |                     ResolvedInterpPart::Literal(ref bytes) => {
[INFO] [stdout]      |                                                 ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2149:21
[INFO] [stdout]      |
[INFO] [stdout] 2149 |                     ResolvedInterpPart::Literal(ref bytes) => {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2149 -                     ResolvedInterpPart::Literal(ref bytes) => {
[INFO] [stdout] 2149 +                     ResolvedInterpPart::Literal(bytes) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2235:42
[INFO] [stdout]      |
[INFO] [stdout] 2235 |                     ResolvedCondRhs::Str(ref rhs_bytes) => {
[INFO] [stdout]      |                                          ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2235:21
[INFO] [stdout]      |
[INFO] [stdout] 2235 |                     ResolvedCondRhs::Str(ref rhs_bytes) => {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2235 -                     ResolvedCondRhs::Str(ref rhs_bytes) => {
[INFO] [stdout] 2235 +                     ResolvedCondRhs::Str(rhs_bytes) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2255:49
[INFO] [stdout]      |
[INFO] [stdout] 2255 |                     ResolvedCondRhs::Startswith(ref pat) => {
[INFO] [stdout]      |                                                 ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2255:21
[INFO] [stdout]      |
[INFO] [stdout] 2255 |                     ResolvedCondRhs::Startswith(ref pat) => {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2255 -                     ResolvedCondRhs::Startswith(ref pat) => {
[INFO] [stdout] 2255 +                     ResolvedCondRhs::Startswith(pat) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2259:47
[INFO] [stdout]      |
[INFO] [stdout] 2259 |                     ResolvedCondRhs::Endswith(ref pat) => {
[INFO] [stdout]      |                                               ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2259:21
[INFO] [stdout]      |
[INFO] [stdout] 2259 |                     ResolvedCondRhs::Endswith(ref pat) => {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2259 -                     ResolvedCondRhs::Endswith(ref pat) => {
[INFO] [stdout] 2259 +                     ResolvedCondRhs::Endswith(pat) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2263:47
[INFO] [stdout]      |
[INFO] [stdout] 2263 |                     ResolvedCondRhs::Contains(ref pat) => {
[INFO] [stdout]      |                                               ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2263:21
[INFO] [stdout]      |
[INFO] [stdout] 2263 |                     ResolvedCondRhs::Contains(ref pat) => {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2263 -                     ResolvedCondRhs::Contains(ref pat) => {
[INFO] [stdout] 2263 +                     ResolvedCondRhs::Contains(pat) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2269:43
[INFO] [stdout]      |
[INFO] [stdout] 2269 |                     ResolvedCondRhs::Test(ref re) => {
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2269:21
[INFO] [stdout]      |
[INFO] [stdout] 2269 |                     ResolvedCondRhs::Test(ref re) => {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2269 -                     ResolvedCondRhs::Test(ref re) => {
[INFO] [stdout] 2269 +                     ResolvedCondRhs::Test(re) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2613:54
[INFO] [stdout]      |
[INFO] [stdout] 2613 |                     ResolvedStringChainPart::Literal(ref bytes) => {
[INFO] [stdout]      |                                                      ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2613:21
[INFO] [stdout]      |
[INFO] [stdout] 2613 |                     ResolvedStringChainPart::Literal(ref bytes) => {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2613 -                     ResolvedStringChainPart::Literal(ref bytes) => {
[INFO] [stdout] 2613 +                     ResolvedStringChainPart::Literal(bytes) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2663:70
[INFO] [stdout]      |
[INFO] [stdout] 2663 |                     ResolvedStringChainPart::FieldArithToString(idx, ref ops) => {
[INFO] [stdout]      |                                                                      ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2663:21
[INFO] [stdout]      |
[INFO] [stdout] 2663 |                     ResolvedStringChainPart::FieldArithToString(idx, ref ops) => {
[INFO] [stdout]      |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2663 -                     ResolvedStringChainPart::FieldArithToString(idx, ref ops) => {
[INFO] [stdout] 2663 +                     ResolvedStringChainPart::FieldArithToString(idx, ops) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2692:43
[INFO] [stdout]      |
[INFO] [stdout] 2692 |         ResolvedRemap::FieldCmpConst(idx, ref op, n) => {
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2692:9
[INFO] [stdout]      |
[INFO] [stdout] 2692 |         ResolvedRemap::FieldCmpConst(idx, ref op, n) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2692 -         ResolvedRemap::FieldCmpConst(idx, ref op, n) => {
[INFO] [stdout] 2692 +         ResolvedRemap::FieldCmpConst(idx, op, n) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2698:44
[INFO] [stdout]      |
[INFO] [stdout] 2698 |         ResolvedRemap::FieldCmpField(idx1, ref op, idx2) => {
[INFO] [stdout]      |                                            ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2698:9
[INFO] [stdout]      |
[INFO] [stdout] 2698 |         ResolvedRemap::FieldCmpField(idx1, ref op, idx2) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 2698 -         ResolvedRemap::FieldCmpField(idx1, ref op, idx2) => {
[INFO] [stdout] 2698 +         ResolvedRemap::FieldCmpField(idx1, op, idx2) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:2705:33
[INFO] [stdout]      |
[INFO] [stdout] 2705 |         ResolvedRemap::BoolExpr(ref l, ref bool_op, ref r) => {
[INFO] [stdout]      |                                 ^^^    ^^^          ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |                                 |      |
[INFO] [stdout]      |                                 |      explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |                                 explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:2705:9
[INFO] [stdout]      |
[INFO] [stdout] 2705 |         ResolvedRemap::BoolExpr(ref l, ref bool_op, ref r) => {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifiers
[INFO] [stdout]      |
[INFO] [stdout] 2705 -         ResolvedRemap::BoolExpr(ref l, ref bool_op, ref r) => {
[INFO] [stdout] 2705 +         ResolvedRemap::BoolExpr(l, bool_op, r) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9169:71
[INFO] [stdout]      |
[INFO] [stdout] 9169 |                     let else_computed = if let BranchOutput::Computed(ref rexpr) = else_output {
[INFO] [stdout]      |                                                                       ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9169:48
[INFO] [stdout]      |
[INFO] [stdout] 9169 |                     let else_computed = if let BranchOutput::Computed(ref rexpr) = else_output {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9169 -                     let else_computed = if let BranchOutput::Computed(ref rexpr) = else_output {
[INFO] [stdout] 9169 +                     let else_computed = if let BranchOutput::Computed(rexpr) = else_output {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9183:68
[INFO] [stdout]      |
[INFO] [stdout] 9183 |                     let else_resolved = if let BranchOutput::Remap(ref entries) = else_output {
[INFO] [stdout]      |                                                                    ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9183:48
[INFO] [stdout]      |
[INFO] [stdout] 9183 |                     let else_resolved = if let BranchOutput::Remap(ref entries) = else_output {
[INFO] [stdout]      |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9183 -                     let else_resolved = if let BranchOutput::Remap(ref entries) = else_output {
[INFO] [stdout] 9183 +                     let else_resolved = if let BranchOutput::Remap(entries) = else_output {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16714:68
[INFO] [stdout]       |
[INFO] [stdout] 16714 |                 let else_computed2 = if let BranchOutput::Computed(ref rexpr) = else_output {
[INFO] [stdout]       |                                                                    ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16714:45
[INFO] [stdout]       |
[INFO] [stdout] 16714 |                 let else_computed2 = if let BranchOutput::Computed(ref rexpr) = else_output {
[INFO] [stdout]       |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16714 -                 let else_computed2 = if let BranchOutput::Computed(ref rexpr) = else_output {
[INFO] [stdout] 16714 +                 let else_computed2 = if let BranchOutput::Computed(rexpr) = else_output {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16729:64
[INFO] [stdout]       |
[INFO] [stdout] 16729 |                 let else_resolved = if let BranchOutput::Remap(ref entries) = else_output {
[INFO] [stdout]       |                                                                ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16729:44
[INFO] [stdout]       |
[INFO] [stdout] 16729 |                 let else_resolved = if let BranchOutput::Remap(ref entries) = else_output {
[INFO] [stdout]       |                                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16729 -                 let else_resolved = if let BranchOutput::Remap(ref entries) = else_output {
[INFO] [stdout] 16729 +                 let else_resolved = if let BranchOutput::Remap(entries) = else_output {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:7993:62
[INFO] [stdout]      |
[INFO] [stdout] 7993 | ...                   if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout]      |                                        ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:7993:57
[INFO] [stdout]      |
[INFO] [stdout] 7993 | ...                   if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 7993 -                                             if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout] 7993 +                                             if let Some(Some(name)) = capture_names.get(i) {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:8004:62
[INFO] [stdout]      |
[INFO] [stdout] 8004 | ...                   if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout]      |                                        ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:8004:57
[INFO] [stdout]      |
[INFO] [stdout] 8004 | ...                   if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 8004 -                                             if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout] 8004 +                                             if let Some(Some(name)) = capture_names.get(i) {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:8937:61
[INFO] [stdout]      |
[INFO] [stdout] 8937 | ...                   CondRhs::Startswith(ref s) => {
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:8937:41
[INFO] [stdout]      |
[INFO] [stdout] 8937 | ...                   CondRhs::Startswith(ref s) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 8937 -                                         CondRhs::Startswith(ref s) => {
[INFO] [stdout] 8937 +                                         CondRhs::Startswith(s) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:8942:59
[INFO] [stdout]      |
[INFO] [stdout] 8942 | ...                   CondRhs::Endswith(ref s) => {
[INFO] [stdout]      |                                         ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:8942:41
[INFO] [stdout]      |
[INFO] [stdout] 8942 | ...                   CondRhs::Endswith(ref s) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 8942 -                                         CondRhs::Endswith(ref s) => {
[INFO] [stdout] 8942 +                                         CondRhs::Endswith(s) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:8946:59
[INFO] [stdout]      |
[INFO] [stdout] 8946 | ...                   CondRhs::Contains(ref s) => {
[INFO] [stdout]      |                                         ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:8946:41
[INFO] [stdout]      |
[INFO] [stdout] 8946 | ...                   CondRhs::Contains(ref s) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 8946 -                                         CondRhs::Contains(ref s) => {
[INFO] [stdout] 8946 +                                         CondRhs::Contains(s) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:8968:59
[INFO] [stdout]      |
[INFO] [stdout] 8968 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]      |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:8968:37
[INFO] [stdout]      |
[INFO] [stdout] 8968 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 8968 -                                     BranchOutput::Literal(ref bytes) => {
[INFO] [stdout] 8968 +                                     BranchOutput::Literal(bytes) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:8972:57
[INFO] [stdout]      |
[INFO] [stdout] 8972 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:8972:37
[INFO] [stdout]      |
[INFO] [stdout] 8972 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 8972 -                                     BranchOutput::Field(ref f) => {
[INFO] [stdout] 8972 +                                     BranchOutput::Field(f) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9022:59
[INFO] [stdout]      |
[INFO] [stdout] 9022 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]      |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9022:37
[INFO] [stdout]      |
[INFO] [stdout] 9022 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9022 -                                     BranchOutput::Literal(ref bytes) => {
[INFO] [stdout] 9022 +                                     BranchOutput::Literal(bytes) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9026:57
[INFO] [stdout]      |
[INFO] [stdout] 9026 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9026:37
[INFO] [stdout]      |
[INFO] [stdout] 9026 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9026 -                                     BranchOutput::Field(ref f) => {
[INFO] [stdout] 9026 +                                     BranchOutput::Field(f) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9086:59
[INFO] [stdout]      |
[INFO] [stdout] 9086 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]      |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9086:37
[INFO] [stdout]      |
[INFO] [stdout] 9086 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9086 -                                     BranchOutput::Literal(ref bytes) => {
[INFO] [stdout] 9086 +                                     BranchOutput::Literal(bytes) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9090:57
[INFO] [stdout]      |
[INFO] [stdout] 9090 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9090:37
[INFO] [stdout]      |
[INFO] [stdout] 9090 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9090 -                                     BranchOutput::Field(ref f) => {
[INFO] [stdout] 9090 +                                     BranchOutput::Field(f) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9136:49
[INFO] [stdout]      |
[INFO] [stdout] 9136 | ...                   BranchOutput::Field(ref f) => { ensure_field(f, all, idx); }
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9136:29
[INFO] [stdout]      |
[INFO] [stdout] 9136 | ...                   BranchOutput::Field(ref f) => { ensure_field(f, all, idx); }
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9136 -                             BranchOutput::Field(ref f) => { ensure_field(f, all, idx); }
[INFO] [stdout] 9136 +                             BranchOutput::Field(f) => { ensure_field(f, all, idx); }
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9137:49
[INFO] [stdout]      |
[INFO] [stdout] 9137 | ...                   BranchOutput::Remap(ref entries) => {
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9137:29
[INFO] [stdout]      |
[INFO] [stdout] 9137 | ...                   BranchOutput::Remap(ref entries) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9137 -                             BranchOutput::Remap(ref entries) => {
[INFO] [stdout] 9137 +                             BranchOutput::Remap(entries) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9145:52
[INFO] [stdout]      |
[INFO] [stdout] 9145 | ...                   BranchOutput::Computed(ref rexpr) => {
[INFO] [stdout]      |                                              ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9145:29
[INFO] [stdout]      |
[INFO] [stdout] 9145 | ...                   BranchOutput::Computed(ref rexpr) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9145 -                             BranchOutput::Computed(ref rexpr) => {
[INFO] [stdout] 9145 +                             BranchOutput::Computed(rexpr) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9227:50
[INFO] [stdout]      |
[INFO] [stdout] 9227 | ...                   CondRhs::Str(ref s) => {
[INFO] [stdout]      |                                    ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9227:37
[INFO] [stdout]      |
[INFO] [stdout] 9227 | ...                   CondRhs::Str(ref s) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9227 -                                     CondRhs::Str(ref s) => {
[INFO] [stdout] 9227 +                                     CondRhs::Str(s) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9241:57
[INFO] [stdout]      |
[INFO] [stdout] 9241 | ...                   CondRhs::Startswith(ref s) => Some(
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9241:37
[INFO] [stdout]      |
[INFO] [stdout] 9241 | ...                   CondRhs::Startswith(ref s) => Some(
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9241 -                                     CondRhs::Startswith(ref s) => Some(
[INFO] [stdout] 9241 +                                     CondRhs::Startswith(s) => Some(
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9245:55
[INFO] [stdout]      |
[INFO] [stdout] 9245 | ...                   CondRhs::Endswith(ref s) => Some(
[INFO] [stdout]      |                                         ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9245:37
[INFO] [stdout]      |
[INFO] [stdout] 9245 | ...                   CondRhs::Endswith(ref s) => Some(
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9245 -                                     CondRhs::Endswith(ref s) => Some(
[INFO] [stdout] 9245 +                                     CondRhs::Endswith(s) => Some(
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9249:55
[INFO] [stdout]      |
[INFO] [stdout] 9249 | ...                   CondRhs::Contains(ref s) => Some(
[INFO] [stdout]      |                                         ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9249:37
[INFO] [stdout]      |
[INFO] [stdout] 9249 | ...                   CondRhs::Contains(ref s) => Some(
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9249 -                                     CondRhs::Contains(ref s) => Some(
[INFO] [stdout] 9249 +                                     CondRhs::Contains(s) => Some(
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9284:52
[INFO] [stdout]      |
[INFO] [stdout] 9284 | ...                   CondRhs::Field(ref f) => {
[INFO] [stdout]      |                                      ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9284:37
[INFO] [stdout]      |
[INFO] [stdout] 9284 | ...                   CondRhs::Field(ref f) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9284 -                                     CondRhs::Field(ref f) => {
[INFO] [stdout] 9284 +                                     CondRhs::Field(f) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9364:55
[INFO] [stdout]      |
[INFO] [stdout] 9364 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]      |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9364:33
[INFO] [stdout]      |
[INFO] [stdout] 9364 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9364 -                                 BranchOutput::Literal(ref bytes) => {
[INFO] [stdout] 9364 +                                 BranchOutput::Literal(bytes) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9368:53
[INFO] [stdout]      |
[INFO] [stdout] 9368 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]      |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9368:33
[INFO] [stdout]      |
[INFO] [stdout] 9368 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]      |
[INFO] [stdout] 9368 -                                 BranchOutput::Field(ref f) => {
[INFO] [stdout] 9368 +                                 BranchOutput::Field(f) => {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:9399:50
[INFO] [stdout]      |
[INFO] [stdout] 9399 | ...                   if let Some((ref kp, ref res, close)) = resolved_data {
[INFO] [stdout]      |                                    ^^^     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |                                    |
[INFO] [stdout]      |                                    explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]      |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]     --> src/bin/jq-jit.rs:9399:49
[INFO] [stdout]      |
[INFO] [stdout] 9399 | ...                   if let Some((ref kp, ref res, close)) = resolved_data {
[INFO] [stdout]      |                                   ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifiers
[INFO] [stdout]      |
[INFO] [stdout] 9399 -                                     if let Some((ref kp, ref res, close)) = resolved_data {
[INFO] [stdout] 9399 +                                     if let Some((kp, res, close)) = resolved_data {
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:11879:65
[INFO] [stdout]       |
[INFO] [stdout] 11879 | ...                   StringChainOp::Ltrimstr(ref prefix) => {
[INFO] [stdout]       |                                               ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:11879:41
[INFO] [stdout]       |
[INFO] [stdout] 11879 | ...                   StringChainOp::Ltrimstr(ref prefix) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 11879 -                                         StringChainOp::Ltrimstr(ref prefix) => {
[INFO] [stdout] 11879 +                                         StringChainOp::Ltrimstr(prefix) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:11885:65
[INFO] [stdout]       |
[INFO] [stdout] 11885 | ...                   StringChainOp::Rtrimstr(ref suffix) => {
[INFO] [stdout]       |                                               ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:11885:41
[INFO] [stdout]       |
[INFO] [stdout] 11885 | ...                   StringChainOp::Rtrimstr(ref suffix) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 11885 -                                         StringChainOp::Rtrimstr(ref suffix) => {
[INFO] [stdout] 11885 +                                         StringChainOp::Rtrimstr(suffix) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:11894:66
[INFO] [stdout]       |
[INFO] [stdout] 11894 | ...                   StringChainOp::SplitJoin(ref sep, ref rep) => {
[INFO] [stdout]       |                                                ^^^      ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |                                                |
[INFO] [stdout]       |                                                explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:11894:41
[INFO] [stdout]       |
[INFO] [stdout] 11894 | ...                   StringChainOp::SplitJoin(ref sep, ref rep) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifiers
[INFO] [stdout]       |
[INFO] [stdout] 11894 -                                         StringChainOp::SplitJoin(ref sep, ref rep) => {
[INFO] [stdout] 11894 +                                         StringChainOp::SplitJoin(sep, rep) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:11937:73
[INFO] [stdout]       |
[INFO] [stdout] 11937 | ...                   StringChainOp::SplitReverseJoin(ref sep, ref rep) => {
[INFO] [stdout]       |                                                       ^^^      ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |                                                       |
[INFO] [stdout]       |                                                       explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:11937:41
[INFO] [stdout]       |
[INFO] [stdout] 11937 | ...                   StringChainOp::SplitReverseJoin(ref sep, ref rep) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifiers
[INFO] [stdout]       |
[INFO] [stdout] 11937 -                                         StringChainOp::SplitReverseJoin(ref sep, ref rep) => {
[INFO] [stdout] 11937 +                                         StringChainOp::SplitReverseJoin(sep, rep) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:11978:69
[INFO] [stdout]       |
[INFO] [stdout] 11978 | ...                   StringChainTerminal::Startswith(ref arg) => {
[INFO] [stdout]       |                                                       ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:11978:37
[INFO] [stdout]       |
[INFO] [stdout] 11978 | ...                   StringChainTerminal::Startswith(ref arg) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 11978 -                                     StringChainTerminal::Startswith(ref arg) => {
[INFO] [stdout] 11978 +                                     StringChainTerminal::Startswith(arg) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:11986:67
[INFO] [stdout]       |
[INFO] [stdout] 11986 | ...                   StringChainTerminal::Endswith(ref arg) => {
[INFO] [stdout]       |                                                     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:11986:37
[INFO] [stdout]       |
[INFO] [stdout] 11986 | ...                   StringChainTerminal::Endswith(ref arg) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 11986 -                                     StringChainTerminal::Endswith(ref arg) => {
[INFO] [stdout] 11986 +                                     StringChainTerminal::Endswith(arg) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:11994:67
[INFO] [stdout]       |
[INFO] [stdout] 11994 | ...                   StringChainTerminal::Contains(ref arg) => {
[INFO] [stdout]       |                                                     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:11994:37
[INFO] [stdout]       |
[INFO] [stdout] 11994 | ...                   StringChainTerminal::Contains(ref arg) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 11994 -                                     StringChainTerminal::Contains(ref arg) => {
[INFO] [stdout] 11994 +                                     StringChainTerminal::Contains(arg) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:12007:64
[INFO] [stdout]       |
[INFO] [stdout] 12007 | ...                   StringChainTerminal::Index(ref needle) => {
[INFO] [stdout]       |                                                  ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:12007:37
[INFO] [stdout]       |
[INFO] [stdout] 12007 | ...                   StringChainTerminal::Index(ref needle) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 12007 -                                     StringChainTerminal::Index(ref needle) => {
[INFO] [stdout] 12007 +                                     StringChainTerminal::Index(needle) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16494:57
[INFO] [stdout]       |
[INFO] [stdout] 16494 | ...                   CondRhs::Startswith(ref s) => {
[INFO] [stdout]       |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16494:37
[INFO] [stdout]       |
[INFO] [stdout] 16494 | ...                   CondRhs::Startswith(ref s) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16494 -                                     CondRhs::Startswith(ref s) => {
[INFO] [stdout] 16494 +                                     CondRhs::Startswith(s) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16498:55
[INFO] [stdout]       |
[INFO] [stdout] 16498 | ...                   CondRhs::Endswith(ref s) => {
[INFO] [stdout]       |                                         ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16498:37
[INFO] [stdout]       |
[INFO] [stdout] 16498 | ...                   CondRhs::Endswith(ref s) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16498 -                                     CondRhs::Endswith(ref s) => {
[INFO] [stdout] 16498 +                                     CondRhs::Endswith(s) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16502:55
[INFO] [stdout]       |
[INFO] [stdout] 16502 | ...                   CondRhs::Contains(ref s) => {
[INFO] [stdout]       |                                         ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16502:37
[INFO] [stdout]       |
[INFO] [stdout] 16502 | ...                   CondRhs::Contains(ref s) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16502 -                                     CondRhs::Contains(ref s) => {
[INFO] [stdout] 16502 +                                     CondRhs::Contains(s) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16523:55
[INFO] [stdout]       |
[INFO] [stdout] 16523 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]       |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16523:33
[INFO] [stdout]       |
[INFO] [stdout] 16523 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16523 -                                 BranchOutput::Literal(ref bytes) => {
[INFO] [stdout] 16523 +                                 BranchOutput::Literal(bytes) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16527:53
[INFO] [stdout]       |
[INFO] [stdout] 16527 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]       |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16527:33
[INFO] [stdout]       |
[INFO] [stdout] 16527 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16527 -                                 BranchOutput::Field(ref f) => {
[INFO] [stdout] 16527 +                                 BranchOutput::Field(f) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16575:55
[INFO] [stdout]       |
[INFO] [stdout] 16575 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]       |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16575:33
[INFO] [stdout]       |
[INFO] [stdout] 16575 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16575 -                                 BranchOutput::Literal(ref bytes) => {
[INFO] [stdout] 16575 +                                 BranchOutput::Literal(bytes) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16579:53
[INFO] [stdout]       |
[INFO] [stdout] 16579 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]       |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16579:33
[INFO] [stdout]       |
[INFO] [stdout] 16579 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16579 -                                 BranchOutput::Field(ref f) => {
[INFO] [stdout] 16579 +                                 BranchOutput::Field(f) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16634:55
[INFO] [stdout]       |
[INFO] [stdout] 16634 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]       |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16634:33
[INFO] [stdout]       |
[INFO] [stdout] 16634 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16634 -                                 BranchOutput::Literal(ref bytes) => {
[INFO] [stdout] 16634 +                                 BranchOutput::Literal(bytes) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16638:53
[INFO] [stdout]       |
[INFO] [stdout] 16638 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]       |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16638:33
[INFO] [stdout]       |
[INFO] [stdout] 16638 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16638 -                                 BranchOutput::Field(ref f) => {
[INFO] [stdout] 16638 +                                 BranchOutput::Field(f) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16682:45
[INFO] [stdout]       |
[INFO] [stdout] 16682 |                         BranchOutput::Field(ref f) => { ensure_field(f, all, idx); }
[INFO] [stdout]       |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16682:25
[INFO] [stdout]       |
[INFO] [stdout] 16682 |                         BranchOutput::Field(ref f) => { ensure_field(f, all, idx); }
[INFO] [stdout]       |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16682 -                         BranchOutput::Field(ref f) => { ensure_field(f, all, idx); }
[INFO] [stdout] 16682 +                         BranchOutput::Field(f) => { ensure_field(f, all, idx); }
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16683:45
[INFO] [stdout]       |
[INFO] [stdout] 16683 |                         BranchOutput::Remap(ref entries) => {
[INFO] [stdout]       |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16683:25
[INFO] [stdout]       |
[INFO] [stdout] 16683 |                         BranchOutput::Remap(ref entries) => {
[INFO] [stdout]       |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16683 -                         BranchOutput::Remap(ref entries) => {
[INFO] [stdout] 16683 +                         BranchOutput::Remap(entries) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16691:48
[INFO] [stdout]       |
[INFO] [stdout] 16691 |                         BranchOutput::Computed(ref rexpr) => {
[INFO] [stdout]       |                                                ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16691:25
[INFO] [stdout]       |
[INFO] [stdout] 16691 |                         BranchOutput::Computed(ref rexpr) => {
[INFO] [stdout]       |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16691 -                         BranchOutput::Computed(ref rexpr) => {
[INFO] [stdout] 16691 +                         BranchOutput::Computed(rexpr) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16771:46
[INFO] [stdout]       |
[INFO] [stdout] 16771 | ...                   CondRhs::Str(ref s) => {
[INFO] [stdout]       |                                    ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16771:33
[INFO] [stdout]       |
[INFO] [stdout] 16771 | ...                   CondRhs::Str(ref s) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16771 -                                 CondRhs::Str(ref s) => {
[INFO] [stdout] 16771 +                                 CondRhs::Str(s) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16785:53
[INFO] [stdout]       |
[INFO] [stdout] 16785 | ...                   CondRhs::Startswith(ref s) => Some(
[INFO] [stdout]       |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16785:33
[INFO] [stdout]       |
[INFO] [stdout] 16785 | ...                   CondRhs::Startswith(ref s) => Some(
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16785 -                                 CondRhs::Startswith(ref s) => Some(
[INFO] [stdout] 16785 +                                 CondRhs::Startswith(s) => Some(
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16789:51
[INFO] [stdout]       |
[INFO] [stdout] 16789 | ...                   CondRhs::Endswith(ref s) => Some(
[INFO] [stdout]       |                                         ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16789:33
[INFO] [stdout]       |
[INFO] [stdout] 16789 | ...                   CondRhs::Endswith(ref s) => Some(
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16789 -                                 CondRhs::Endswith(ref s) => Some(
[INFO] [stdout] 16789 +                                 CondRhs::Endswith(s) => Some(
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16793:51
[INFO] [stdout]       |
[INFO] [stdout] 16793 | ...                   CondRhs::Contains(ref s) => Some(
[INFO] [stdout]       |                                         ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16793:33
[INFO] [stdout]       |
[INFO] [stdout] 16793 | ...                   CondRhs::Contains(ref s) => Some(
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16793 -                                 CondRhs::Contains(ref s) => Some(
[INFO] [stdout] 16793 +                                 CondRhs::Contains(s) => Some(
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16825:48
[INFO] [stdout]       |
[INFO] [stdout] 16825 | ...                   CondRhs::Field(ref f) => {
[INFO] [stdout]       |                                      ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16825:33
[INFO] [stdout]       |
[INFO] [stdout] 16825 | ...                   CondRhs::Field(ref f) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16825 -                                 CondRhs::Field(ref f) => {
[INFO] [stdout] 16825 +                                 CondRhs::Field(f) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16903:51
[INFO] [stdout]       |
[INFO] [stdout] 16903 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]       |                                             ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16903:29
[INFO] [stdout]       |
[INFO] [stdout] 16903 | ...                   BranchOutput::Literal(ref bytes) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16903 -                             BranchOutput::Literal(ref bytes) => {
[INFO] [stdout] 16903 +                             BranchOutput::Literal(bytes) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16907:49
[INFO] [stdout]       |
[INFO] [stdout] 16907 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]       |                                           ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16907:29
[INFO] [stdout]       |
[INFO] [stdout] 16907 | ...                   BranchOutput::Field(ref f) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 16907 -                             BranchOutput::Field(ref f) => {
[INFO] [stdout] 16907 +                             BranchOutput::Field(f) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:16938:46
[INFO] [stdout]       |
[INFO] [stdout] 16938 | ...                   if let Some((ref kp, ref res, close)) = resolved_data {
[INFO] [stdout]       |                                    ^^^     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |                                    |
[INFO] [stdout]       |                                    explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:16938:45
[INFO] [stdout]       |
[INFO] [stdout] 16938 | ...                   if let Some((ref kp, ref res, close)) = resolved_data {
[INFO] [stdout]       |                                   ^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifiers
[INFO] [stdout]       |
[INFO] [stdout] 16938 -                                 if let Some((ref kp, ref res, close)) = resolved_data {
[INFO] [stdout] 16938 +                                 if let Some((kp, res, close)) = resolved_data {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:19302:61
[INFO] [stdout]       |
[INFO] [stdout] 19302 | ...                   StringChainOp::Ltrimstr(ref prefix) => {
[INFO] [stdout]       |                                               ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:19302:37
[INFO] [stdout]       |
[INFO] [stdout] 19302 | ...                   StringChainOp::Ltrimstr(ref prefix) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 19302 -                                     StringChainOp::Ltrimstr(ref prefix) => {
[INFO] [stdout] 19302 +                                     StringChainOp::Ltrimstr(prefix) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:19308:61
[INFO] [stdout]       |
[INFO] [stdout] 19308 | ...                   StringChainOp::Rtrimstr(ref suffix) => {
[INFO] [stdout]       |                                               ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:19308:37
[INFO] [stdout]       |
[INFO] [stdout] 19308 | ...                   StringChainOp::Rtrimstr(ref suffix) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 19308 -                                     StringChainOp::Rtrimstr(ref suffix) => {
[INFO] [stdout] 19308 +                                     StringChainOp::Rtrimstr(suffix) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:19317:62
[INFO] [stdout]       |
[INFO] [stdout] 19317 | ...                   StringChainOp::SplitJoin(ref sep, ref rep) => {
[INFO] [stdout]       |                                                ^^^      ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |                                                |
[INFO] [stdout]       |                                                explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:19317:37
[INFO] [stdout]       |
[INFO] [stdout] 19317 | ...                   StringChainOp::SplitJoin(ref sep, ref rep) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifiers
[INFO] [stdout]       |
[INFO] [stdout] 19317 -                                     StringChainOp::SplitJoin(ref sep, ref rep) => {
[INFO] [stdout] 19317 +                                     StringChainOp::SplitJoin(sep, rep) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:19358:69
[INFO] [stdout]       |
[INFO] [stdout] 19358 | ...                   StringChainOp::SplitReverseJoin(ref sep, ref rep) => {
[INFO] [stdout]       |                                                       ^^^      ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |                                                       |
[INFO] [stdout]       |                                                       explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:19358:37
[INFO] [stdout]       |
[INFO] [stdout] 19358 | ...                   StringChainOp::SplitReverseJoin(ref sep, ref rep) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifiers
[INFO] [stdout]       |
[INFO] [stdout] 19358 -                                     StringChainOp::SplitReverseJoin(ref sep, ref rep) => {
[INFO] [stdout] 19358 +                                     StringChainOp::SplitReverseJoin(sep, rep) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:19398:65
[INFO] [stdout]       |
[INFO] [stdout] 19398 | ...                   StringChainTerminal::Startswith(ref arg) => {
[INFO] [stdout]       |                                                       ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:19398:33
[INFO] [stdout]       |
[INFO] [stdout] 19398 | ...                   StringChainTerminal::Startswith(ref arg) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 19398 -                                 StringChainTerminal::Startswith(ref arg) => {
[INFO] [stdout] 19398 +                                 StringChainTerminal::Startswith(arg) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:19402:63
[INFO] [stdout]       |
[INFO] [stdout] 19402 | ...                   StringChainTerminal::Endswith(ref arg) => {
[INFO] [stdout]       |                                                     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:19402:33
[INFO] [stdout]       |
[INFO] [stdout] 19402 | ...                   StringChainTerminal::Endswith(ref arg) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 19402 -                                 StringChainTerminal::Endswith(ref arg) => {
[INFO] [stdout] 19402 +                                 StringChainTerminal::Endswith(arg) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:19406:63
[INFO] [stdout]       |
[INFO] [stdout] 19406 | ...                   StringChainTerminal::Contains(ref arg) => {
[INFO] [stdout]       |                                                     ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:19406:33
[INFO] [stdout]       |
[INFO] [stdout] 19406 | ...                   StringChainTerminal::Contains(ref arg) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 19406 -                                 StringChainTerminal::Contains(ref arg) => {
[INFO] [stdout] 19406 +                                 StringChainTerminal::Contains(arg) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:19414:60
[INFO] [stdout]       |
[INFO] [stdout] 19414 | ...                   StringChainTerminal::Index(ref needle) => {
[INFO] [stdout]       |                                                  ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:19414:33
[INFO] [stdout]       |
[INFO] [stdout] 19414 | ...                   StringChainTerminal::Index(ref needle) => {
[INFO] [stdout]       |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 19414 -                                 StringChainTerminal::Index(ref needle) => {
[INFO] [stdout] 19414 +                                 StringChainTerminal::Index(needle) => {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:20655:58
[INFO] [stdout]       |
[INFO] [stdout] 20655 | ...                   if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout]       |                                        ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:20655:53
[INFO] [stdout]       |
[INFO] [stdout] 20655 | ...                   if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout]       |                                   ^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 20655 -                                         if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout] 20655 +                                         if let Some(Some(name)) = capture_names.get(i) {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]      --> src/bin/jq-jit.rs:20666:58
[INFO] [stdout]       |
[INFO] [stdout] 20666 | ...                   if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout]       |                                        ^^^ explicit `ref` binding modifier not allowed when implicitly borrowing
[INFO] [stdout]       |
[INFO] [stdout] note: matching on a reference type with a non-reference pattern implicitly borrows the contents
[INFO] [stdout]      --> src/bin/jq-jit.rs:20666:53
[INFO] [stdout]       |
[INFO] [stdout] 20666 | ...                   if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout]       |                                   ^^^^^^^^^^^^^^ this non-reference pattern matches on a reference type `&_`
[INFO] [stdout]       = warning: this changes meaning in Rust 2024
[INFO] [stdout]       = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout] help: remove the unnecessary binding modifier
[INFO] [stdout]       |
[INFO] [stdout] 20666 -                                         if let Some(Some(ref name)) = capture_names.get(i) {
[INFO] [stdout] 20666 +                                         if let Some(Some(name)) = capture_names.get(i) {
[INFO] [stdout]       |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/bin/jq-jit.rs:4377:29
[INFO] [stdout]      |
[INFO] [stdout] 4377 |         while let Some(v) = jq_jit::eval::read_next_input() {
[INFO] [stdout]      |                        -    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |                        |    |
[INFO] [stdout]      |                        |    this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                        |    up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                        `v` calls a custom destructor
[INFO] [stdout]      |                        `v` will be dropped later as of Edition 2024
[INFO] [stdout] 4378 |             process_input(&v, None, &mut out, &mut compact_buf, &mut any_output_false, &mut had_error);
[INFO] [stdout] 4379 |         }
[INFO] [stdout]      |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `#1` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> src/value.rs:151:1
[INFO] [stdout]      |
[INFO] [stdout]  151 | impl Drop for ObjMap {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `v` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/compact_str-0.9.1/src/repr/mod.rs:774:1
[INFO] [stdout]      |
[INFO] [stdout]  774 | impl Drop for Repr {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: rustc interrupted by SIGSEGV, printing backtrace
[INFO] [stderr] 
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x3cf9acc)[0x733c026f9acc]
[INFO] [stderr] /lib/x86_64-linux-gnu/libc.so.6(+0x45330)[0x733bfe833330]
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x4583125)[0x733c02f83125]
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x45823d2)[0x733c02f823d2]
[INFO] [stderr] 
[INFO] [stderr] ### cycle encountered after 4 frames with period 5
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x45827d9)[0x733c02f827d9]
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x45827d9)[0x733c02f827d9]
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x45827d9)[0x733c02f827d9]
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x45827d9)[0x733c02f827d9]
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x45827d9)[0x733c02f827d9]
[INFO] [stderr] ### recursed 50 times
[INFO] [stderr] 
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x45827d9)[0x733c02f827d9]
[INFO] [stderr] /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/lib/librustc_driver-f84658577f279709.so(+0x45827d9)[0x733c02f827d9]
[INFO] [stderr] 
[INFO] [stderr] note: rustc unexpectedly overflowed its stack! this is a bug
[INFO] [stderr] note: maximum backtrace depth reached, frames may have been lost
[INFO] [stderr] note: we would appreciate a report at https://github.com/rust-lang/rust
[INFO] [stderr] help: you can increase rustc's stack size by setting RUST_MIN_STACK=16777216
[INFO] [stderr] child failed with signal `11`
[INFO] [stderr] error: could not compile `jq-jit` (bin "jq-jit" test); 96 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/bin/cargo /opt/rustwide/rustup-home/toolchains/622891a4e29178280638a6b63a8908bde2c0c854/bin/rustc --crate-name jq_jit --edition=2021 src/bin/jq-jit.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --test --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=9e8153ff5b2eba4e -C extra-filename=-0a0e243bd84f839e --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern anyhow=/opt/rustwide/target/debug/deps/libanyhow-c71454bee9a46d61.rmeta --extern chrono=/opt/rustwide/target/debug/deps/libchrono-5a25f1c811b928f6.rmeta --extern compact_str=/opt/rustwide/target/debug/deps/libcompact_str-944aeda30dd38acb.rmeta --extern cranelift_codegen=/opt/rustwide/target/debug/deps/libcranelift_codegen-75b1699fc88a34be.rmeta --extern cranelift_frontend=/opt/rustwide/target/debug/deps/libcranelift_frontend-888430a775741df3.rmeta --extern cranelift_jit=/opt/rustwide/target/debug/deps/libcranelift_jit-74179a0070816bb4.rmeta --extern cranelift_module=/opt/rustwide/target/debug/deps/libcranelift_module-e292f6533b5b4e16.rmeta --extern cranelift_native=/opt/rustwide/target/debug/deps/libcranelift_native-d050865b74534f37.rmeta --extern csv=/opt/rustwide/target/debug/deps/libcsv-3cf9f08c1053b1f4.rmeta --extern itoa=/opt/rustwide/target/debug/deps/libitoa-361f614e90fa73b5.rmeta --extern jq_jit=/opt/rustwide/target/debug/deps/libjq_jit-d6260e2468626674.rmeta --extern libc=/opt/rustwide/target/debug/deps/liblibc-400eb405c995d4a1.rmeta --extern libm=/opt/rustwide/target/debug/deps/liblibm-fe1fd9e32c1a1759.rmeta --extern memchr=/opt/rustwide/target/debug/deps/libmemchr-831326f22b6086ce.rmeta --extern memmap2=/opt/rustwide/target/debug/deps/libmemmap2-a393c54c7603f71e.rmeta --extern mimalloc=/opt/rustwide/target/debug/deps/libmimalloc-fc7e75775b27d0d3.rmeta --extern proptest=/opt/rustwide/target/debug/deps/libproptest-876b898ada1b7174.rmeta --extern regex=/opt/rustwide/target/debug/deps/libregex-c38d6b37f0032b76.rmeta --extern ryu=/opt/rustwide/target/debug/deps/libryu-1446cd3931d9a887.rmeta --extern serde_json=/opt/rustwide/target/debug/deps/libserde_json-ab5977cf083273a1.rmeta --extern stacker=/opt/rustwide/target/debug/deps/libstacker-584238d73ac4d745.rmeta -L native=/opt/rustwide/target/debug/build/libmimalloc-sys-241d95bbad19780d/out -L native=/opt/rustwide/target/debug/build/psm-e1839df3f90ddb7d/out` (exit status: 2)
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr]    Migrating tests/csv_tsv_nul_escape.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/fuzz_axis_assign.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/contract_number_format.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/loc_line_number.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/cli_attached_library_path.rs from 2021 edition to 2024
[INFO] [stderr]    Migrating tests/contract_value_factories.rs from 2021 edition to 2024
[INFO] running `Command { std: "docker" "inspect" "ab510d6e0a661bd045f7c5d84d9b4f72a80816b3a3b74662a5189463fc353515", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab510d6e0a661bd045f7c5d84d9b4f72a80816b3a3b74662a5189463fc353515", kill_on_drop: false }`
[INFO] [stdout] ab510d6e0a661bd045f7c5d84d9b4f72a80816b3a3b74662a5189463fc353515
